sf apex get test throws heap out of memory

Summary
We have quite big project having currently c.a.  2300+ apex tests. Starting with version @salesforce/cli/2.37.4 we are experiencing heap out memory when triggering those tests via CLI. The tests on the org runs fine, however on the CLI we have:
[152:0x7f2dda78b680] 33404559 ms: Mark-Compact 4019.9 (4131.4) -> 4004.8 (4132.1) MB, 1852.90 / 0.00 ms (average mu = 0.145, current mu = 0.026) allocation failure; scavenge might not succeed
[152:0x7f2dda78b680] 33406649 ms: Mark-Compact 4020.7 (4132.1) -> 4005.4 (4132.9) MB, 2021.94 / 0.00 ms (average mu = 0.090, current mu = 0.033) allocation failure; scavenge might not succeed

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----
/scripts-1089-2040536/step_script: line 259: 152 Aborted (core dumped) sf apex run test -c -v -r junit -w 480 -l RunLocalTests -d output

It seems that CLI tries to allocate more then 4GB memory and fails.
Affected commands:

sf apex run test -c -v -r junit -w 480 -l RunLocalTests -d output   - this is complete command we initially found that problem. It runs the tests for many hours and then do some post-processing and finally fail.
sf apex get test -c -i 707afas... -d output  - this is a bit simpler command retrieving existing test run and doing only the post processing. It fails the same way, but it doesn’t  require to run tests, but rather gather existing tests and doing some post processing. This is minimal and convenient way to replicate.

Steps to reproduce

Authorize an org. The credentials are provided within Salesforce case #467133949. There are scratch orgs having our project deployed and tests run.
Find existing test run id on the org. It should begin with 707...
Run the command providing proper test run id sf apex get test -c -i 7073O00002aQRQqQAO -c -d output . This usually takes 15-20 min and then it fails with heap out of memory.
The replication on 16GB computer does not require additional settings. However it might be that you will have computer with larger amount of RAM it might be required to limit node memory like this NODE_OPTIONS=--max-old-space-size=4096 (just guessing).

Expected result
Test report saved into output folder.
Actual result
The CLI exists with non zero exit code and heap out of memory as above.
System Information
We replicated this on macOS, Linux and Windows. It seems not OS dependent.
{
  "architecture": "darwin-arm64",
  "cliVersion"<EMAIL_ADDRESS>  "nodeVersion": "node-v20.12.2",
  "osVersion": "Darwin 23.4.0",
  "rootPath": "/Users/pawel/.nvm/versions/node/v20.12.2/lib/node_modules/@salesforce/cli",
  "shell": "bash",
  "pluginVersions": [
    "@oclif/plugin-autocomplete 3.0.16 (core)",
    "@oclif/plugin-commands 3.3.1 (core)",
    "@oclif/plugin-help 6.0.21 (core)",
    "@oclif/plugin-not-found 3.1.6 (core)",
    "@oclif/plugin-plugins 5.0.14 (core)",
    "@oclif/plugin-search 1.0.23 (core)",
    "@oclif/plugin-update 4.2.7 (core)",
    "@oclif/plugin-version 2.0.17 (core)",
    "@oclif/plugin-warn-if-update-available 3.0.15 (core)",
    "@oclif/plugin-which 3.1.8 (core)",
    "@salesforce/cli 2.39.6 (core)",
    "apex 3.1.9 (core)",
    "auth 3.6.3 (core)",
    "community 3.0.20 (user)",
    "data 3.3.2 (core)",
    "deploy-retrieve 3.6.6 (core)",
    "dev 2.1.12 (user)",
    "functions 1.22.11 (user)",
    "info 3.2.3 (core)",
    "limits 3.3.4 (core)",
    "marketplace 1.2.4 (core)",
    "org 4.1.3 (core)",
    "packaging 2.4.0 (core)",
    "schema 3.3.4 (core)",
    "settings 2.2.1 (core)",
    "signups 2.0.20 (user)",
    "sobject 1.3.6 (core)",
    "source 3.3.3 (core)",
    "telemetry 3.3.4 (core)",
    "templates 56.2.4 (core)",
    "trust 3.6.6 (core)",
    "user 3.5.2 (core)",
    "vlocityestools 0.24.8 (user)"
  ]
}

Here are last few lines of a log. It might be helpful to determine failing operation
{"level":20,"time":1714094822092,"name":"sf:elapsedTime","msg":"CodeCoverage.queryAggregateCodeCov - exit","elapsedTime":1587.355986}
{"level":20,"time":1714094822094,"name":"sf:elapsedTime","msg":"CodeCoverage.getAggregateCodeCoverage - exit","elapsedTime":1590.129882}
{"level":20,"time":1714094822094,"name":"sf:elapsedTime","msg":"CodeCoverage.getOrgWideCoverage - enter"}
{"level":20,"time":1714094822095,"name":"sf:connection","method":"GET","url":"https://napoleon-broth-211.scratch.my.salesforce.com/services/data/v60.0/tooling/query?q=SELECT%20PercentCovered%20FROM%20ApexOrgWideCoverage","headers":{"content-type":"application/json","user-agent":"sfdx toolbelt:"},"msg":"request"}
{"level":20,"time":1714094822260,"name":"sf:elapsedTime","msg":"CodeCoverage.getOrgWideCoverage - exit","elapsedTime":165.877896}
{"level":20,"time":1714094822260,"name":"sf:elapsedTime","msg":"AsyncTests.formatAsyncResults - exit","elapsedTime":1843305.83755}
{"level":20,"time":1714094822260,"name":"sf:elapsedTime","msg":"AsyncTests.runTests - exit","elapsedTime":22977229.298226}
{"level":20,"time":1714094822260,"name":"sf:elapsedTime","msg":"TestService.runTestAsynchronous - exit","elapsedTime":22977229.389393}
{"level":20,"time":1714094822415,"name":"sf:elapsedTime","msg":"JUnitReporter.format - enter"}
{"level":20,"time":1714094822415,"name":"sf:elapsedTime","msg":"JUnitReporter.buildProperties - enter"}
{"level":20,"time":1714094822417,"name":"sf:elapsedTime","msg":"JUnitReporter.buildProperties - exit","elapsedTime":1.823485}
{"level":20,"time":1714094822417,"name":"sf:elapsedTime","msg":"JUnitReporter.buildTestCases - enter"}
{"level":20,"time":1714094822475,"name":"sf:elapsedTime","msg":"JUnitReporter.buildTestCases - exit","elapsedTime":57.704141}
{"level":20,"time":1714094822475,"name":"sf:elapsedTime","msg":"JUnitReporter.format - exit","elapsedTime":59.935349}
{"level":20,"time":1714094822476,"name":"sf:elapsedTime","msg":"TestService.writeResultFiles - enter"}

Could you try installing plugin-apex 3.1.3 (the version used by<EMAIL_ADDRESS>and see if that resolves the issue? sf plugins install<EMAIL_ADDRESS>
yes, it resolves the issue.
One more observation. I was casually looking at memory consumption of node process while running the command with apex 3.1.3. It seems it is doing some querying of an org for half an hour (code coverage?). During this time memory consumption steadily rose to 400MB. Then rapidly consume 1.7GB and then quit. As I wrote it doesn’t fail, but the memory consumption still seems much too high.
On apex 3.1.11 the memory consumption exceeds 4GB and it fails.
The numbers above are for our project. You are welcome to use scratch orgs provided for debugging the issue.


Moved CreateExtension release notes into django.contrib.postgres section.

@CleitonDeLima Thanks :+1: Welcome aboard :boat:


Request to set undercut amount to 0 to price match

I'd rather match than undercut - can you add the option to use 0 as the amount and just copy the lowest price?

This setting already exists. Set Amount to undercut by to 0 instead of 1.


Issues when impoting multiple json files with same name/keys

Potentially related to: https://github.com/Updater/node-sass-json-importer/issues/21
I've noticed some issues with the wrong file being read/imported if the project has multiple files with the same name, like this:
[module1/
----[config.json
----[module1.scss
[module1/
----[config.json
----[module2.scss
I've also noticed issues when using multiple files with different names when the contents begin with the same first key, like this:
[module1/
----[module1.json
----[module1.scss
[module1/
----[module2.json
----[module2.scss
Where both module1.json and module2.json start like this:
{
    "default": {
        ...
    }
}

Sometimes the wrong json file will be imported, which obviously breaks the compilation.
My ideal setup would be for all my json files to be named config.json and begin with the default key, but as it stands I have to have unique names for both the file name and opening key.

Sorry we never followed up on this @esr360! If its still something you'd like to try to fix, please re-open with a reproducible scenario.


Date validation doesn't work

I'm trying to use Zend_Validate_Date, based on the instructions here.
First, the instructions don't say anything about how the formats should be specified.
But even following the given example, isValid returns true for values that are obviously incorrect:
$validator = new Zend_Validate_Date(array('format' => 'yyyy'));
echo $validator->isValid('1'); // prints "1"
echo $validator->isValid('123123123'); // prints "1"

If I'm correct in guessing that the formats are the CLDR formats mentioned here, then it doesn't work with months and days either:
$validator = new Zend_Validate_Date(array('format' => 'M/d/yyyy'));
echo $validator->isValid('123123123'); // prints "1"

At this point we can not change the current behaviour or change the parsing/extraction of the date parts.
Please use PHP's DateTime class or the new validators from ZF2.
I will close this issue.


Change the behavior of run_all_pending_jobs to wait for jobs to begin running

Before this would do a query to see how many jobs could be retried, and
then loop that many times queueing them up, and immediately return. This
was problematic for a few reasons.

It was hard to test. We needed to do explicit synchronization to make
sure jobs were actually running (we're still doing that in tests that
care about locking behavior)
It never communicated when a catastrophic error has occurred. If the
thread pool or connection pool become poisoned, we'd never find out.
We'd just blindly enqueue jobs which would immediately fail
It didn't determine whether jobs were actually locked or not.
It required an extra connection in the pool for the count
The runner never knew if jobs actually started or not. Ultimately if
jobs aren't running, we want to kill the runner and restart it.

The new system works as follows:

Create a new channel for the worker threads to communicate with the
coordinating thread
Queue as many jobs to run as there are available threads, or 1 if no
threads are available and we've never queued a job

We need to queue at least 1 job to make sure we receive a message.
Workers queued before the call to run_all_pending_jobs (e.g. they
were run by the previous call) won't be able to communicate on our
channel. We need at least one new worker to be executed so we find
out if there are more jobs to run

Listen for messages on our channel. Workers communicate if they got a
job, there are no jobs left, or if an error occurred loading the job

The error cases here are only on loading a job, not running it.
An error means either there's no database connection available, or
we got an error loading the job from the DB. Both cases mean we
probably need to restart the runner or change the configuration.

Loop until we get an error message or a message that no jobs are left

This should ensure that our thread pool remains fully saturated, and
that we're returning any errors that occurred. We technically can't
guarantee that we return all errors, since job a could lock a job, job
b tries to lock a job gets none, reports no jobs left, and then job b
fails during deserialization.
I opted to go with the looser guarantee that errors are returned since
an error happening in deserialization is extermely unlikely, and if we
wait for all messages to be received before returning we are less likely
to keep the worker threads fully saturated.

I somehow accidentally closed this. I've fixed the concern from review and merged this


[BEAM-1471]: Add cross-sdk tests for IterableCoder

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

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

R: @dhalperi @robertwb

Coverage decreased (-0.003%) to 69.713% when pulling 965160c0c0bada4500d51ca44c6c8e5e1c0476bf on vikkyrk:common_iterable_coder into 30cb93ced35494db79c81c49e07a298f560c3905 on apache:master.

retest this please

Changes Unknown when pulling cab5e6347f3fcece2cac4819e268488d7ce66830 on vikkyrk:common_iterable_coder into ** on apache:master**.


https://competencies.us cannot connect to non-secure repositories.

This may be intended, however, it needs better messaging if it is.

ex: http://cass.credentialfinder.net


Revert "increment umbrella chart patch version"

This reverts commit 1965bab9e02cd6635b68985ecbcb6442d58350ab.

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


Fungible Tokens & Direct Tipping

the rebased version of #810 with applied #832
I have squshed the overlapping changes, reducing the commit amount that have simplified rebasing. The diff is almost the same as in the base branch, except that I have extracted #836, you can compare branches by git diff feature/Fungible-Tokens-Direct-Tipping-3 feature/fungible-token-featureflagged. I'm going to test this and check the iframe wallet state.

How does squashing provide a better history here? The history now shows that all changes were made by @davidyuk, when you look at the git blame it shows @davidyuk for all lines changed, so if some questions arise about some lines of code in the future the author will not be known.

@davidyuk @mradkov I have 2 suggestions

keep the non-squashed history to reflect what has happened
apply me a author of these squashed commits

Well, the breaking of the author wasn't intentional, it is because of my git gui, I have fixed that.

keep the non-squashed history to reflect what has happened

All fixes, adjustments after code review/rebasing are not needed. If you need to fix something after rebasing it means that the rebasing was did wrong. Review remarks usually are quite obvious and don't need to be preserved. So long branch of commits is more difficult to rebase, I think squashing was needed to be done by Stan in the previous PR. The line when history becomes immutable is merging to develop, until that I think we can freely polish it.


Typescript: import autocomplete fills in function arguments

When I use autocomplete to import a function, it fills in the function arguments right there.
Here's what it looks like:

import {foo} from './fooBar'
import {foo, b} from './fooBar'
bar shows up as a suggesstion; hit enter.
It fills in as import {foo, bar(argname)} from './fooBar'.

@andy-hanson I assume you have set 	"typescript.useCodeSnippetsOnMethodSuggest": true. Right?

Right.

Quick note: this is not limited to imports, any assignment can be impacted:
const a = {
    func(x) {}
}

let {f$} = a;

completes to
let {func(x)} = a;

I'm still getting this error. The autocomplete just fills in an argument's type, not a correct signature.

@zakdances Are you on 1.9 insiders? This fix is not in VSCode 1.8.

@mjbvz I'm using 1.8.1 so I guess you can disregard my message. Thanks for the heads up!


Increase radialbar stroke-width / thickness

The stroke-width scales with the size of the chart, which makes it very hard to spot, if the chart is smaller. I want to use the radial bar chart as a sort of indicator, so it would be pretty small. I know u can adjust the width of the track, but i couldn't find a solution on how to increase the stroke-width of the bar.

( left is size: 100, right is size: 50 )
Is there any possibility to manipulate the stroke-width of the bar? Would be more than happy if someone could give me a lead.

Try these settings to make the bars thick
    plotOptions: {
        radialBar: {
          hollow: {
            size: '30%', // percentage
          },
          track: {
            margin: 1, // margin is in pixels
          }
        }
     }

It's working just right. Thank you very much!


Hardcoded lang env utf-8, for testing

Changes

...

Checklist

[x] Read the contribution guide and accept the code of conduct
[ ] Readme (updated or not needed)
[ ] Tests (added, updated or not needed)

Fixed in https://github.com/game-ci/docker/pull/58

Fixed in https://github.com/game-ci/docker/pull/58


Do not initialize remote clients if cluster not enabled

solves #2718

Coverage increased (+0.06%) to 66.931% when pulling 71860742c0907b7eaec96dc15173b70436bb32cd on do-not-initialize-client-if-cluster-not-enabled into 2ec684567b983b8fc831d3091ffabc2374fd7b46 on master.


Update project npm dependencies to remove vulnerabilities

At the moment running npm audit shows 10 high severity vulnerabilities, these need to be fix in .
In general it is a good idea to keep dependencies updated for several reasons:

It can address known security vulnerabilities.
It can fix bugs and improve stability .
New versions of dependencies often come with performance improvements.
It can ensure that application remains compatible with other libraries and tools that we use.

Current npm audit output:
# npm audit report

minimatch  <3.0.5
Severity: high
minimatch ReDoS vulnerability - https://github.com/advisories/GHSA-f8q6-p94x-37v3
fix available via `npm audit fix --force`
Will install<EMAIL_ADDRESS>which is a breaking change
node_modules/serve-handler/node_modules/minimatch
  serve-handler  1.1.0 - 6.1.3
  Depends on vulnerable versions of minimatch
  node_modules/serve-handler
    serve  7.0.0 - 14.0.1
    Depends on vulnerable versions of serve-handler
    node_modules/serve

nth-check  <2.0.1
Severity: high
Inefficient Regular Expression Complexity in nth-check - https://github.com/advisories/GHSA-rp65-9cf3-cjxr
fix available via `npm audit fix --force`
Will install<EMAIL_ADDRESS>which is a breaking change
node_modules/nth-check
  css-select  <=3.1.0
  Depends on vulnerable versions of nth-check
  node_modules/svgo/node_modules/css-select
    svgo  1.0.0 - 1.3.2
    Depends on vulnerable versions of css-select
    node_modules/svgo
      @svgr/plugin-svgo  <=5.5.0
      Depends on vulnerable versions of svgo
      node_modules/@svgr/plugin-svgo
        @svgr/rollup  4.0.0 - 5.5.0
        Depends on vulnerable versions of @svgr/plugin-svgo
        node_modules/@svgr/rollup
        @svgr/webpack  4.0.0 - 5.5.0
        Depends on vulnerable versions of @svgr/plugin-svgo
        node_modules/@svgr/webpack
          react-scripts  >=2.1.4
          Depends on vulnerable versions of @svgr/webpack
          node_modules/react-scripts

10 high severity vulnerabilities

To address all issues (including breaking changes), run:
  npm audit fix --force

Hey @KonstantinEpam23,
We're part of a startup called Seal Security that mitigates software vulnerabilities in older open source versions by backporting/creating standalone security patches - enabling more straightforward remediation in cases like this. We created an nth-check 1.02-sp1 that's vulnerability-free. As with all of our patches, it's open-source and available for free.
If relevant, check out our GitHub repo if you wish to learn more, or start using our app.
Please feel free to reach us at<EMAIL_ADDRESS>if you have any requests/questions.

Not tested by QA.


activerecord (5.1.4) lib/active_record/relation/predicate_builder.rb:113:in `new' not passing a value, causing Arel 9.0.0 to fail

failing in :  'object=model.where(column: value)'  (in my case I have  'object=model.where(column: value).select(:column)' but the failure happened in the where clause)
with : 'wrong number of arguments (given 0, expected 1)'
The system runs on ruby 2.4.2 and Rails 5.1.4 and I recently updated Arel 8.0.0 to 9.0.0
StackTrace:

arel (9.0.0) lib/arel/nodes/bind_param.rb:7:in `initialize'

activerecord (5.1.4) lib/active_record/relation/predicate_builder.rb:113:in `new'

if can_be_bound?(column_name, value)
              result[column_name] = Arel::Nodes::BindParam.new
              binds << build_bind_param(column_name, value)
end

https://github.com/rails/rails/commit/213796fb4936dce1da2f0c097a054e1af5c25c2c#diff-2ec9993375ecb711e08452788d625581
The above commit in Rails (5.2.0) seems that it fixes that issue, it will come with Rails 5.2 but is confusing as 5.2.0 is not released yet


Add libass support!

https://github.com/libass/libass

As you can see, its weird not to see Just Player in here seeing its open sourced like the others.
ASS/SSA subs is the only thing missing for Just player. Particularly for Anime fans!
Hope you could add it too!

This is a job for ExoPlayer: https://github.com/google/ExoPlayer/issues/8435#issuecomment-759327563

@moneytoo
Its an entirely separate entity from exoplayer. Emby and plex (recently added libass) android players both use exoplayer and libass on top of it.
Hope you can look it up.

https://libass.github.io/JavascriptSubtitlesOctopus/videojs.html
Here are some JS examples on browser players using libass.

Configuring subtitle renderer possible in Just player?
Libass is an open source subtitle renderer and a replacement for the VSfilter.
Example,

on MPC-HC, you could change it by pointing to a folder with libass.
on MPV, you could point a "script" folder with latest libass

If there were any publicly available patches/integration of libass in ExoPlayer, I would include them. Unfortunately, no one is sharing that. It would be needed to be implemented in the engine so it's really not a task for Just Player.


Behavior for working with keys

Decided to create a separate issue. I have mentioned here https://github.com/select2/select2/issues/3031 the Twitter's Typeahead and psedocode. At the moment, when the focus is set on the input field and I press Enter key, the Dropdown gets open. But normally, the Enter key should submit the form. I think we can use the following pseudocode for Enter:
Enter is Keyed
IF dropdown menu cursor is on suggestion THEN
  close dropdown menu
  display suggestion in the input field
  prevent default browser action e.g. form submit
ENDIF

And for Up Arrow:
Up Arrow is Keyed
IF dropdown menu is open THEN
  move dropdown menu cursor up 1 suggestion
ELSE
  request suggestions for current query

  IF suggestions are available THEN
    render suggestions in dropdown menu
    open dropdown menu
  ENDIF
ENDIF

similar for DownArrow.

But normally, the Enter key should submit the form.

This might be true for <input type="text" />, but I don't believe it is true for <select>.
The behaviour for the enter key is currently as follows, which matches what has been observed across a few browsers (Chrome, Firefox)
if "dropdown" is not  "open":
  open dropdown
else:
  select currently highlighted option
  close dropdown

The up/down arrow behaviour is not implemented when the dropdown is closed. You can implement it on your own by catching the keyup events and checking if the dropdown is open.

Yes, it is not true for single select, but for multiple select you have an input field behind. User can input somethng into a multiple select. In my opinion, the behavior for multi select should be like DropDown example here http://www.primefaces.org/showcase/ui/input/autoComplete.xhtml

Click on arrow icon --> DrowDown gets open (like single selection).
Input something into the input field, suggestions are shown in the DropDown.
Press enter key when focus on the input field, the form gets submitted (default button is clicked automatically like behavior in other inputs).

By the way, can we display an arrow icon via configuration's option?

Do we have openOnEnter option in the Select 4.x? Select 3.5.x had it http://select2.github.io/select2/#documentation

Do we have openOnEnter option in the Select 4.x?

Nope, but feel free to make a pull request to add it (along with documentation).

Select2's autocomplete feature stops working when you try to add a 2nd tag with keyboard only.
At the "Multiple select boxes" example, Type "Haw", press Enter. "Hawaii" tag added.
Now type "ala" for Alaska. You would expect autocomplete to work when entering the 2nd tag name. No autocomplete, no dropdown. That is the main bug (or missing feature) I found but I kept going.
Other bugs can be found:
If you press enter at this point, the dropdown appears with "Hawaii" selected. If you press Enter again, the Hawaii tag you entered before disappears and only the "ala" text will remain.
Press Enter again on the selected "Hawaii" option, "Alaska" will be selected but instead of adding "Alaska" as a new tag, select2 goes into a state when it stops caring about the keyboard. It looses focus.

I am using select2 4.0.0 version. When using keyboard navigation on multi select dropdown, I am facing an issue in which able to select an option using enter key or ctrl + space. But once an option is selected, select dropdown loses focus and I have to tab again to bring focus on it for selecting other options.


feature(course): propose a grant regarding vod course on blockchain technology

Grant Application Checklist

[ ] The application-template.md has been copied, renamed ( "project_name.md") and updated.
[ ] A BTC address for the payment of the milestones is provided inside the application.
[ ] The software of the project will be released under the Apache license version 2.0 as specified in the terms and conditions.
[ ] The total funding amount of the project is below 30k at the time of submission.

Thanks for the grant application and your commitment to the ecosystem. But our grants program currently focuses on software development. I suggest to apply for funding via the treasury instead. Let me know if you need any help with it and feel free to contact me on riot (@david:web3.foundation).


pixi install installs all environments in multi env setting when pypi-dependency is used

[project]
name = "test"
channels = ["conda-forge"]
platforms = ["linux-64", "osx-arm64", "osx-64", "win-64"]

[dependencies]
python = ">=3.9"
polars = ">=0.14.24,<0.21"

[pypi-dependencies]
test = {path = "."}

[feature.py39.dependencies]
python = "3.9.*"
[feature.py310.dependencies]
python = "3.10.*"
[feature.py311.dependencies]
python = "3.11.*"
[feature.py312.dependencies]
python = "3.12.*"

[environments]
py39 = ["py39"]
py310 = ["py310"]
py311 = ["py311"]
py312 = ["py312"]

❯ rm -rf .pixi pixi.lock && pixi install
# ...
❯ ls .pixi/envs
default/ py310/   py311/   py312/   py39/

I assume this always happens, regardless of the type of requirement. This is expected behavior because all environments have pypi-dependencies (inherited from the default feature). To be able to solve these pypi environments we need to install a python interpreter, this is done by first only installing the conda packages into their target prefixes.

Hmm, i guess this makes sense... But i still don't like this behavior as this will fill up your drive quite fast if you have a large number of environments that you want to test against 😅
In polarify this totals to 3.6 GB being used while the default environment (which is used in 99% of local development use cases) is only 309 MB large.

Do you have envisioned another approach to get rid of pixi run postinstall that doesn't require all envs being installed?

Ah I see your use case. The problem is that to determine the dependencies of your path based project we need python to execute the build backend. Since you have environments with different python versions, the only way to reliably  lock this is to invoke python.
The only thing I can think of is that we dont need all conda dependencies to run python. However, some of them might be used by the build backend so its also not really clear which dependencies we can skip during this step..

we need python to execute the build backend

it's probably not possible to let the pypi dependencies be evaluated by pixi because the build backend could theoretically do arbitrary stuff?
At least in polarify, the pyproject.toml doesn't contain anything that's not already in pixi.toml.
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
# ...
dependencies = [
    "polars >=0.14.24,<0.21",
]

Not sure what other shenanigans hatchling supports.

The problem is that to determine the dependencies of your path based project we need python to execute the build backend.

Not sure if this is a good idea or not: how about creating a hash of pyproject.toml, setup.py and setup.cfg and if nothing changes don't try to re-resolve the lockfile and thus not download all envs?

Well the same goes for any source based dependencies (there are still a lot of them).
But we are indeed planning to lock the path based dependency based on the hash of the pyproject.

The problem is that to determine the dependencies of your path based project we need python to execute the build backend

Actually, how are you handling other platforms?
On macOS for example, i cannot install a linux python (because of ncurses). How is the lockfile resolved for other platforms in this case?

Actually, how are you handling other platforms?

Pixi uses the current platforms python to do the solving. If that is not available you get this issue: https://github.com/prefix-dev/pixi/issues/1051

The problem is that to determine the dependencies of your path based project we need python to execute the build backend

Actually, how are you handling other platforms? On macOS for example, i cannot install a linux python (because of ncurses). How is the lockfile resolved for other platforms in this case?

Also note that the python interpreter is used for source dependencies and for the resolving we only care about the metadata. It is now kind of assumed that once created, this metadata is static across platforms. There are examples where this is not the case, at least thats what I gather from reading python threads. With https://peps.python.org/pep-0643/ we can actually check if the METADATA is static.
But I don't know if it will change the behavior much, as there is a lot of old packages, that don't have this. But going onwards from this it will help us avoid having to have the python executable at some point. UV guys helped merge this in warehouse recently.

I'd like to mention this issue is accentuated if one uses a pyproject.toml file as pixi manifest, due to the automatic injection of the Python project's dependencies as pypi-dependencies on the default environment.

For documentation purpose: @anjos The auto injection is a helper. You are allowed to move it to a feature. e.g.
-[tool.pixi.pypi-dependencies]
+[tool.pixi.feature.dev.pypi-dependencies]
 test_feature_editable = { path = ".", editable = true }

+[tool.pixi.environments]
+dev = ["dev"]
+

Your comment still holds, just want to get this out there for users that find this issue.

Thank you, @ruben-arts - that is what we ended up doing for now.


VARS declared before first knot not listed under global variables table entry

Input ink file:
VAR a = "foo"
VAR b = "bar"
CONST c = 42
CONST d = "Number 42"
-> first_knot
== first_knot ==
In the knot a = {a}
In the knot b = {b}
-> second_knot
== second_knot ==
Then we change them :
~ a = "baz"
~ b = "bazbar"
Now a = {a}
and b = {b}
->DONE
Convert to lua using narrator 1.2 produces :
return {variables={},lists={},inclusions={},constants={d="Number 42",c=42},version={tree=1,engine=1},tree={first_knot={={"In the knovt a = #a#","In the knot b = #b#",{divert="second_knot"},""}},second_knot={={"Then we change them :",{value=""baz"",var="a"},{value=""bazbar"",var="b"},"Now a = #a#","and b = #b#",{divert="DONE"}}},={={{value=""foo"",var="a"},{value=""bar"",var="b"},{divert="first_knot"}}}}}
We see at the beginnig of the output :
As expected : constants={d="Number 42",c=42}
Not expected : variables={}
We only see variables a and b being outputted as variable definitions  within the second knot, en their value is set the second time. They are present at the end of the output, but not at a place we would expect them.
Greetings, and thanks for writing narrator!
Wyzoom

@Wyzoom Thanks for the feedback!
The problem was that variables were assigned at runtime. Improved it in 1.3, now variables are assigned after parsing.


[ttFont] xmlWriter import error with saveXML split tables = True requests

Attempt to dump split OT tables with ttx, executed in Python 3 venv with PyPI release of fontTools:
$ ttx -s -d regular-ttx Hack-Regular.ttf
Dumping "Hack-Regular.ttf" to "regular-ttx/Hack-Regular.ttx"...
ERROR: Unhandled exception has occurred
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/fontTools/ttx.py", line 389, in main
    process(jobs, options)
  File "/usr/local/lib/python3.6/site-packages/fontTools/ttx.py", line 363, in process
    action(input, output, options)
  File "/usr/local/lib/python3.6/site-packages/fontTools/misc/loggingTools.py", line 372, in wrapper
    return func(*args, **kwds)
  File "/usr/local/lib/python3.6/site-packages/fontTools/ttx.py", line 260, in ttDump
    newlinestr=options.newlinestr)
  File "/usr/local/lib/python3.6/site-packages/fontTools/ttLib/ttFont.py", line 221, in saveXML
    self._saveXML(writer, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/fontTools/ttLib/ttFont.py", line 264, in _saveXML
    tableWriter = xmlWriter.XMLWriter(tablePath,
NameError: name 'xmlWriter' is not defined

PR for fix incoming...

PR #1189


Fails to build on Gentoo Linux aarch64

Hyprland Version
 System/Version info
gui-wm/hyprland-0.35.0-r1

Some system info:
OS: Gentoo Linux aarch64
Host: Apple MacBook Pro (14-inch, M2 Pro, 2023)
Kernel: 6.6.0-asahi-15-liv-2
Shell: zsh 5.9
DE: Hyprland
Terminal: foot (no clue if this could matter...)
CPU: Apple Blizzard-M2-Pro (10) @ 2.424GHz
Memory: 3099MiB / 15579MiB (was down to 1GB when compiling, so the system had 15GB for the compile jobs)

Bug or Regression?
Bug
Description
gui-wm/hyprland-0.35.0-r1 failed to build when I tried to update it.
How to reproduce
Be on Gentoo and run emerge gui-wm/hyprland
Crash reports, logs, images, videos
Since the issue would be a bit big, I uploaded the log to https://0x0.st/HhPR.log

Oh, forgot, I also have USE="X legacy-renderer -systemd" on Hyprland.

please do not report build failures, CI passes. Also, very old ver.


[DO NOT MERGE ... YET] Switch to ROCm 3.5

Can one of the admins verify this patch?

links to passing logs (coz I am going to change the title, which will trigger the CI to run again!)

http://ml-ci.amd.com:21096/job/develop-upstream-unit-tests/job/tensorflow-upstream-unit-tests/2033/
http://ml-ci.amd.com:21096/job/develop-upstream-unit-tests/job/tensorflow-upstream-unit-tests-rocm-cpp/609/
http://ml-ci.amd.com:21096/job/develop-upstream-unit-tests/job/tensorflow-upstream-unit-tests-rocm-xla/1399/


Add django project

This pull request corresponds to adding the Django beginners project to the Github.

Closing in favour of #46


test PR with Github API

Please pull this in!

Docs Build status updates of commit e1c66a2:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

tutorial-manage-data-disk.md
:white_check_mark:Succeeded

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


New node wallet address where?

A few noob questions... I followed the user guide and got my node running. It is synced up and looks to be functioning. I see it says to export my private key and save it somewhere safe, and to do this I need my wallet address. Where do I find my wallet address?
I also see the guide says I get a node setup award as I need a small balance to start earning some koin, and that I can transfer some of my account balance to get things moving more quickly. How long before I receive said award, is it automatic or do I have to do anything, and what is the proper method to transfer some of my account balance into the node wallet? I think I see how to perform the transfer but I don't want to mess it up. Thanks in advance!

Welcome to the club)
I will try to answer your questions in order
To view a list of your addresses, you can, for example, use the RPC command:

pocketcoin-cli listaddressgroupings
This command finds all possible addresses in your wallet, and also calculates the balances on these addresses

As for the reward, we had a reward program for starting a node at the very beginning, now it has been canceled.
But we have a new incentive program for setting up a so-called webnode -
https://github.com/pocketnetteam/pocketnet.core/blob/master/doc/public_access.md
https://pocketnet.app/pocketnet_team?s=7dee078d50dbba971099071b654757fac5c178026027bdc27f8616ff91357a32
As for the balance, after finding out your node addresses (or creating a new one - getnewaddress), you can transfer your funds from other available sources. The more coins on your node, the higher the chance of winning.


`GLIBC_2.34' not found (required by /app/spiced)

Describe the bug
Build docker image or spice run all end up with following error message:
Digest: sha256:958c9a54da35f2d6fe80126f4edb9f6b4537503ba47807a707e42eb8028f0a8d
Status: Downloaded newer image for ghcr.io/spiceai/spiceai:latest
/app/spiced: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /app/spiced) /app/spiced: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /app/spiced)
To Reproduce
Steps to reproduce the behavior:

~./spice/bin/spice run

...
Status: Downloaded newer image for ghcr.io/spiceai/spiceai:latest
/app/spiced: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /app/spiced) /app/spiced: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /app/spiced)
Thanks

Please close it, I fixed the problem.


How to make an old cookie-file not valid any more?

Hi,
I have fetched a token and saved it in the cookie-file correctly in a past project. Now I have created another project with another Node-RED installation, and I would like to authorize ONLY this new Node-RED installation with the same Alexa Echo Dot. At the same time, I would like toget rid of the former Node-RED installation an prevent it to access Alexa Echo Dot for security. So, I fetched a new token and saved into a new cookie-file for the new Node-RED installation, but unfortunately the old one is still working in the previous project... I would like to avoid that the old Node-RED can access Alexa with the old cookie file.
How can I do?
Thanks

I would think it would be as easy as deleting the cookie file and disabling any refresh routine so the next time it authorization is needed it will fail and not be able to get a refreshed cookie file.  Just in case you might want to remove the login credentials from your regresh routing as well.


Selector Stats tab now appears in Edge 123, but is empty

Following on from this issue, https://github.com/MicrosoftEdge/DevTools/issues/223
I downloaded and installed Edge Canary.
Sometimes the Selector Stats tab shows, but there is no information showing.
See https://screenpal.com/watch/cZnYQ0VdSiK
Microsoft Edge
Version 123.0.2414.0 (Official build) canary (64-bit)
Thanks
S :)

Sorry to hear that. I just tested locally and the feature worked great for me. So maybe this is due to the particular app you are profiling. Any chance you could share a URL to the app, so I can try to repro?

I have something similar. I today updated Microsoft edge and the selector tab just disappeared.
Version 121.0.2277.128 (Official build) (64-bit)
Ubuntu 20.04

@ArtjomsFomins yes, unfortunately this is a known problem with Edge 121 that got resolved later in Edge 123 (which will get released on March 21st). This problem was tracked in issue #223.
This present issue, however, is for a case where the Selector Stats tab sometimes doesn't work with Edge 123.

@saraheagle any chance you could share more details about your particular scenario. So far, we haven't been able to reproduce the issue in Edge 123. Does it only occur with one particular webpage? Only on your computer? Which OS is this? Any extra information you can provide would help a lot.

Sorry - it is because I was using a preproccesor and its local server. Once you asked for a URL, I twigged why!
On another site I was having issues on only some "Recalculate Styles", but I haven't had time to test that properly, so if I do have issues with that I will create a new post. Thank you so much for your quick reply.
S :)

Ok that sounds great. I'll close this issue for now. Do feel free to create a new one if you ever encounter a new issue.


Add support for mocking session storage

This PR is intended to add support for mocking window.sessionStorage.
Since both sessionStorage and localStorage implement the same Storage API  this should be straightforward to support.
Please, let me know what are your thoughts on this and how this PR can be improved.

@simonihmig Could you please take a look at this? Recently we faced the need to mock sessionStorage in our project, hence this PR.

@simonihmig Thanks a lot for your quick response! Appreciate that 👍


fpp-plugin-tplink.log contains only "c++"

I was hoping to use the tplink plugin log file to help figure out why my tplink test sequence doesn't work.  The only entries in the log are lines containing the text "c++".   I can upload the log file if needed, but since there isn't much in it, I haven't bothered.
I set the log levels to debug and excessive just to make sure it wasn't dependent on logging level.

The plugin logs to the standard fppd.log

The plugin logs to the standard fppd.log

Ok, if that's how you intended it, I will close the issue.


Wallet settings page

Fix #287
This Pr implement godcr settings page

Old spending password doesn't get cleared when I use the cancel button or when I successfully change my wallet password

Old spending password doesn't get cleared when I use the cancel button or when I successfully change my wallet password

Kindly change the label on the remove wallet modal to "Spending password"

Kindly change the label on the remove wallet modal to "Spending password"

Old spending password doesn't get cleared when I use the cancel button or when I successfully change my wallet password

resolved

Old spending password doesn't get cleared when I use the cancel button or when I successfully change my wallet password

resolved

Kindly make the change in the mockup to the settings page.

Kindly make the change in the mockup to the settings page.


Revert "feat: added stars for github and download badges for npm"

Reverts denoland/deno_website2#603
A lot of the badges are not actually displayed because of rate limits:

Also this is probably causing a lot of strain on img.shields.io because we request ~400 badges for every /x load. We should come up with a different solution that includes caching on our side.
Ref #848

@lucacasonato Maybe in future updated we need pagination which will only load 50 or 100 a page & also the download badge for npm packages was weird (out of sync from stars)

I agree with the pagination for the future, but still it is also pretty irresponsible of us to request so many badges from shields.io - it is community run AFAIK. I can see spikes in resource use whenever I load /x: https://metrics.shields.io/d/g_1B7zhik/prom-client-default-metrics :sob:


Disable in-game sharpening option?

Hi was wondering if there was a way to add an option to disable the in-game sharpening filter?
This can be done to games like RE2 and RE8 using HEX edits or another mod like RE2 3D Vision Fix so should be possible. Imagine it'll be similar process to how disabling vignette works.
Thanks!

If you install all the files in the zip file there should be an option to disable sharpening in the very last tab. This does sadly break TAA in RE3 at least, haven't tested other games.

If you install all the files in the zip file there should be an option to disable sharpening in the very last tab. This does sadly break TAA in RE3 at least, haven't tested other games.

Ah my bad didn't see that.


[top] Add support for further top levels

Note: this PR is based on #4294 which contains various fixes to topgen (skip the first 7 commits here).
This PR adds support for additional top levels. This is needed for supporting different FPGAs. On one hand, already the bronze design cannot be implemented on the NexysVideo board. As we move towards silver, we will have to switch the main design to a bigger FPGA but we want to keep supporting low cost boards like the NexysVideo for the community. On the side channel analysis (SCA) front, the situation is even worse: already today, several crypto IPs need to be removed and the flash size needs to be reduced to make the design with a single hardened accelerator fit the smaller FPGA.
Wtih this PR, additional top levels to top_earlgrey can be supported. For those new top-levels, only the hjson config and template files, some top-level core and SystemVerilog files are added under hw/top_... but the auto-generated sources and core files are not added to the repo. These files are automatically generated by FuseSoC at build time by calling topgen under the hood (via generator, similar to what we do with the tech primitives). To this end, FuseSoC needs to be called with a fileset_topgen flag and IPs specific to the top-level (alert handler, clkmgr, rstmgr etc.) have a dependency to this new generator if the flag is specified.
As an example, this PR adds a second top level called top_englishbreakfast that will be used for side channel analysis (basically replacing top_earlgrey_cw305). The generated bitstream has been tested successfully on the ChipWhisperer CW305 FPGA board.
There are currently two workarounds implemented in this PR:

We have hardcoded references to top_earlgrey in the software sources and the SW build configuration. The PR thus contains a script to patch the sources produced by topgen. I will need help from SW folks to solve this properly.
Currently, topgen is run twice by FuseSoC. From the first run, we just take the auto-generated register files and from the second run, we take everything else (some packages, top level). Doing everything in one shot is currently not possible as this results in either unresolved dependencies or cyclic dependencies in FuseSoC. One way out of this would be to allow unresolved dependencies in FuseSoC before the generators (topgen) are run. This is tracked upstream olofk/fusesoc#449.

Update: rebased on master, marked ready for review. It looks like a big PR but most changes are due to adding a second top-level in commit a2e0ec2 ([top_englishbreakfast] Add English Breakfast top). This commit mostly re-adds already existing files with a different name. The other commits are relatively small and easy to review.
I would really like to push this forward and add CI checks before it gets stale again. At the moment, most of the time I produce a new bitstream for SCA, there is a lot of work involved to get the board and software working again on my side. Also this PR will help us to integrate the bronze stuff. Please take a look @eunchan, @tjaychen , @msfschaffner, @imphil .

sorry i'm behind on the review! i'll make sure to have a look soon.

Thanks a lot @msfschaffner for your review, I really appreciate it!

since this deviates from the initial "stubbing" idea we have discussed with the SW folks I think it would be good to grab a slot to discuss the impact on SW to make sure we're not moving into a direction that causes problems later on (@mcy @gkelly @lenary).

Yes, I agree we should discuss this also with SW. Once we have agreement that this approach is reasonable, I will set up a meeting. Just to be clear: this approach doesn't mean we can't do the "stubbing". Personally, I consider the stubbing more suitable for doing quick experiments. The motivation for this one was that the stubbing also has limitations and that we might end up with separate top levels anyway. I wanted to give this a try as well.

is the idea that the nexysvideo target will be moved out into a separate toplevel just as you did that for the SCA board? if so, what is the plan for the FPGA CI flow that we currently have in place? are we going to disable that intermittently once the top_earlgrey config gets too large for that board? (other CI tests for top_earlgrey are probably not affected much. for the FPGA synthesis regression we can just move to a bigger Kintex FPGA target).

I think this should be discussed separately once we have the options in place. Also what happens with the name? Will the main config top_earlgrey become top_jasmine when the nexysvideo becomes too small? Our plan is to have also the SCA board in CI. And I think we should also keep the NexysVideo. Just to make sure we don't break it, and that we don't break topgen's capability to support multiple tops. But in my view, the main resources should be spent on the main configuration we plan to tapeout. I don't think we need the full regression either for the NexysVideo or the ChipWhisperer configuration.

do we plan to add CI regressions for all top-levels that are supported at some point? that will certainly have an impact on runner throughput and we may need to tune our tests and / or add more runners...

I don't think we need that. See my previous answer. But I am open for discussion.

do we have plans how this will be reflected in the documentation? I guess not checking in the autogen'd tops means that the documentation will only reflect the top_earlgrey configuration. but at some point (especially for the nexysvideo FPGA examples) we should probably explain that a reduced config is used.

Also here, I believe we should focus on the main configuration. And yes, if the nexysvideo config starts to deviate, we should document that separately (not the full documentation though), because it's a very attractive target for the community.

Update: as proposed by @msfschaffner , I switched to symlinks for files that are currently shared between the two top levels to reduce code duplication.

We have hardcoded references to top_earlgrey in the software sources and the SW build configuration. The PR thus contains a script to patch the sources produced by topgen. I will need help from SW folks to solve this properly.

I expect the time has finally come when we need to get rid of the static asserts in DIFs like:
// If either of these static assertions fail, then the assumptions in this DIF
// implementation should be revisited. In particular, `kPlicTargets`
// may need updating,
_Static_assert(RV_PLIC_PARAM_NUMSRC == 87,
               "PLIC instantiation parameters have changed.");

Did I read correctly the PR description that top levels will have different set of peripherals? Or is it just the features of the peripherals that change?
It would be useful to get a list of things that change between different top levels that are likely to change.
(Just an example of potential things that can change between different top levels)

IRQ sources count
...

I expect the time has finally come when we need to get rid of the static asserts in DIFs like:
// If either of these static assertions fail, then the assumptions in this DIF
// implementation should be revisited. In particular, `kPlicTargets`
// may need updating,
_Static_assert(RV_PLIC_PARAM_NUMSRC == 87,
               "PLIC instantiation parameters have changed.");

Yep, I think this will be done at some point. However, I strongly believe that we need to focus our dev effort on the bigger main platform and keep the others around in a working state. But we won't have the resources to do everything for every platform.

Did I read correctly the PR description that top levels will have different set of peripherals? Or is it just the features of the peripherals that change?

Yes, you can change the peripherals, not just the features. For example, top_englishbreakfast doesn't feature otbn, otp, kmac and keymgr. The choice of peripherals is arbitrary, I just needed to remove stuff to gain resources for the hardened AES to perform side channel analysis.

It would be useful to get a list of things that change between different top levels that are likely to change.
(Just an example of potential things that can change between different top levels)
* IRQ sources count

* ...

We should discuss this in a meeting or doc. In top_englishbreakfast the changes are quite radical, once we need the missing peripherals during boot (I guess at some point we will) we would have to consider the case in SW if those peripherals are not there etc. And this can mean a lot of work. However, I don't know if this will actually be necessary. For the NexysVideo, we can maybe just remove IPs where we have multiple copies. But we will always have one copy of a the core crypto and system blocks. For SCA, we might get a bigger board eventually.

It would be useful to get a list of things that change between different top levels that are likely to change.
(Just an example of potential things that can change between different top levels)

IRQ sources count

...

We should discuss this in a meeting or doc. In top_englishbreakfast the changes are quite radical, once we need the missing peripherals during boot (I guess at some point we will) we would have to consider the case in SW if those peripherals are not there etc. And this can mean a lot of work. However, I don't know if this will actually be necessary. For the NexysVideo, we can maybe just remove IPs where we have multiple copies. But we will always have one copy of a the core crypto and system blocks. For SCA, we might get a bigger board eventually.

Just to clarify. With this specific paragraph I meant that it would be useful to determine how parameterisation changes between the IP blocks that will stay common between the TOP levels. Things like sizes of FIFOs (crude example), etc...

I'll need a bit more time to fully think this PR through, but in the meantime we can already reduce it a bit to make the discussion and reviewing easier by removing all commits which aren't strictly necessary for this PR and land them right away through another PR:

"[ast] Move clkmgr dependency from wrapper package into wrapper"
All comment cleanups in "[rstmgr, pwrmgr] Clean up dependencies in FuseSoC core files" (these are small things, but it will make a big difference in such a tricky PR).
"[fpga] Use wildcard matching instead of hardcoded top_name in clocks.xdc "
" [top] Remove hardcoded refs to top_earlgrey from SV templates "

Thanks @imphil for having a look! I have factored out the [ast] [fpga] and [top] commit into separate PRs. The [rstmgr, pwrmgr] stuff is still in there as Tim and I had some good discussions here already and I think it would be better to conclude this dicussion in one place. Actually, I would be interested to also hear your opinion on that matter.

Update: I have removed synthesis and lint files as well as the _asic.sv top file for the second top-level. After an offline discussion, @msfschaffner and I concluded that these files are not needed for those other top-levels.
I also did a rebase, which was a huge pain because of the many changes happening in the top_earlgrey recently. I would really appreciate if we could move forward with this, or at least the PRs that I've factored out.

@vogelpi sorry did you get @imphil 's input on what he thinks is the best way to split the template modules re-direction? Should we try to still separate functional core and package? Or do as you originally did, and merge them all into 1?

@vogelpi sorry did you get @imphil 's input on what he thinks is the best way to split the template modules re-direction? Should we try to still separate functional core and package? Or do as you originally did, and merge them all into 1?

I didn't get any input on that yet. But given the changes I did in the ast wrapper PR #4571, I think we will stick with your approach, i.e., having separate core files for component, package and regs, AND do the re-direction inside all of them. After thinking more about this, your approach also seems cleaner to me.

are you sure? Honestly I think yours is fine too.
I'm happy to switch to your scheme, just really wanted to second / third
opinion (probably from Phil, Michael, Eunchan).
Honestly this is one of those areas I almost feel the few of us should take
a vote as to what seems most sensible.
On Wed, Dec 16, 2020 at 10:47 PM Pirmin Vogel<EMAIL_ADDRESS>wrote:

@vogelpi https://github.com/vogelpi sorry did you get @imphil
https://github.com/imphil 's input on what he thinks is the best way to
split the template modules re-direction? Should we try to still separate
functional core and package? Or do as you originally did, and merge them
all into 1?
I didn't get any input on that yet. But given the changes I did in the ast
wrapper PR #4571 https://github.com/lowRISC/opentitan/pull/4571, I
think we will stick with your approach, i.e., having separate core files
for component, package and regs, AND do the re-direction inside all of
them. After thinking more about this, your approach also seems cleaner to
me.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/pull/4329#issuecomment-747246991,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSXDZT4OLRPXOC4IFXLSVGSP7ANCNFSM4UFGMWEA
.

So, sorry for the long delay in getting back to this. I did a fair amount of thinking (or was just very slow in my thinking), and did conclude that there is no easy way to get a nicer solution in place right now.

Getting a solution into the tree to support multiple toplevels is something we need now, both to support @vogelpi in his SCA work, and in very near future if we outgrow the Nexys Video board. So we can't afford to wait solving this problem until we find a great and clean solution.

The software part is painfully ugly, but we do not have a better way to build software for multiple "chips"/"toplevels" at the moment. This is something that we'll need to do, and it will require thinking about how generic or toplevel-specific software should/must be, what to do with the bootloader, etc. I don't expect us to get there even in the next months, so let's start with something that solves our immediate problems, and the approach in this PR does that.

FuseSoC has a hard time currently with the concept of "multiple implementations of the same core", which is something we need here. We did work around that before with the fileset_x flags, and the extension in here to use fileset_topgen doesn't make it more beautiful, but also not significantly worse. It is clear, however, that this isn't a long-term solution. I do have a reasonably good idea how to address this in FuseSoC, but we need to get some preparation work into FuseSoC first. Again, that's something I'm working towards, but it'll take a bit more time to sort out for good.

did you get @imphil 's input on what he thinks is the best way to split the template modules re-direction? Should we try to still separate functional core and package?

IIRC, we did have use cases where the split into a "header" and an "implementation" core was required. I'm honestly not sure any more about the exact details, but I think it was related to DV including only the header, but not the implementation, and pulling in too much code otherwise. I can try to dig it out somewhere, but until then I'd just stick with the current design.
So overall: @vogelpi please rebase to build on top of the already merged PRs, and then I'm happy for this to land.
@mateenfaisal @tomroberts-lowrisc @gkelly we need to allocate resources to a project "multiple toplevels" in Q1/2021 to get this fixed for good.

thanks Philip!
On Fri, Dec 18, 2020 at 7:16 AM Philipp Wagner<EMAIL_ADDRESS>wrote:

@imphil approved this pull request.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/pull/4329#pullrequestreview-555577105,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSVXL6PPBXXZ4OQZHILSVNW3NANCNFSM4UFGMWEA
.

Thanks @imphil! I concur with your views. Let's go ahead with this PR and amend later as we go, since this is soon going to become a blocker otherwise.

did you get @imphil 's input on what he thinks is the best way to split the template modules re-direction? Should we try to still separate functional core and package?

IIRC, we did have use cases where the split into a "header" and an "implementation" core was required. I'm honestly not sure any more about the exact details, but I think it was related to DV including only the header, but not the implementation, and pulling in too much code otherwise. I can try to dig it out somewhere, but until then I'd just stick with the current design.

Indeed, I also think we did that due to DV reasons.

Thanks a lot @imphil  and everybody else for your valuable feedback!
I am now in the process of rebasing this PR once more + revert some of the changes in the core files to keep the separation introduced for DV.

I am still in the process of rebasing and testing - it's a complete nightmare as there are so many inter-dependencies at the top level.

Update, stuff is now working again in Verilator, but not yet on the FPGA. Given how tedious this work is, I strongly think we should directly add first CI checks with this PR. WDYT @msfschaffner and @tjaychen ?

Update, stuff is now working again in Verilator, but not yet on the FPGA. Given how tedious this work is, I strongly think we should directly add first CI checks with this PR. WDYT @msfschaffner and @tjaychen ?

that sounds good to me, but which CI checks did you have in mind? I thought @imphil already enabled fpga test execution. Did you mean another set of CI checks for the second top?

Eventually we should run a test capture on the ChipWhisperer CW305 FPGA board in CI. But that's for next year.
I thought about building the Verilator simulation and building some SW binaries. Actually running the binaries in simulation is maybe not yet feasible as I don't know what the best way to achieve this is.

Update: also the FPGA is working again, I've also added a commit to enable building the Verilator simulation for top_englishbreakfast in CI.

The build of the new top-level is already failing again in CI/on current master...
I will continue rebasing and fixing tomorrow and then merge this PR including the CI checks.

Thanks for adding this CI check! That is indeed becoming necessary at this point.
And sorry for the mess at the top-level.
We had a ton of recent alert / life cycle, memory map and memory scrambling updates that changed many things in the top-level.
I had to constantly rebase my PRs as well and it is painful :(...
Once this has landed, we should probably also start thinking about how we could (soon-ish) change the main FPGA CI build to use one of the larger Kintex devices, and make the NexysVideo CI check use a smaller top-level configuration...

No worries Michael, we are all in the same boat :-)
Yes, we should definitely look into switching to a bigger FPGA and decide how to proceed with the NexysVideo. We currently use ~65% of the LUT and 80% of the BRAM resources. Space will run out soon. I've created #4669 to track this and other follow-up tasks.
I've now also added a CI check to build the CW305 bitstream and things seem to be passing. Once CI finishes, I will merge this PR.

Alright, CI passed. I am merging this now. Thanks @msfschaffner , @tjaychen and @imphil for reviewing this and for your support!


Theme setup

How do we create a theme?
Which structure do we use?

https://chakra-ui.com/theme is also a good example. Many parts are similarly.
But I don't like something like this:
fontSizes: {
    xs: "12px",
    sm: "14px",
    md: "16px",
    lg: "18px",
    xl: "20px",
    "2xl": "24px",
    "3xl": "28px",
    "4xl": "36px",
    "5xl": "48px",
    "6xl": "64px",
  },

theme structure like in theme-ui:

typography
colors
styles
breakpoints
spacing

I would like to (re-)add this to the next iteration. Should we just start out by using theme-ui schema for a theme?

As a work item, maybe wen can have some typings that reflect existing variants?
E.g. if we have a text component that reads from theme.text.<variant> there should be typings for that:
type BaseTheme = {
	text: {
		body: {},
        headline: {}
        [key: string]: {}
	}
}


Need to invoke refresh before using application default credentials.

Builds locally are working great. When I attempt to invoke a gradle build in CI with your plugin enabled, I'm getting a null pointer exception on this line.
It looks like after default application credentials are retrieved around here the refresh method needs to be invoked otherwise the access token will be null and trigger the NPE I'm seeing.

We've made a 1.1.2 release which should fix this issue. However, it may take a few hours for the release to show up in Maven Central and the Gradle plugin repository.
Let me know if you run into any other problems.


Errors on all GF API conditions

(NOTE: If your issue is related to a specific check, please consider mentioning its check-id on the issue title.)
Observed behaviour
Today I'm getting JSON-related errors on anything that makes a call to the GF API. Did an endpoint change?
💔 ERROR: Check METADATA.pb includes production subsets.

com.google.fonts/check/metadata/includes_production_subsets

💔 ERROR The condition FontBakeryCondition:production_metadata had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

💔 ERROR: Version number has increased since previous release on Google Fonts?

com.google.fonts/check/version_bump

💔 ERROR The condition FontBakeryCondition:api_gfonts_ttFont had an error: FailedConditionError: The condition FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

💔 ERROR: Glyphs are similiar to Google Fonts version?

com.google.fonts/check/production_glyphs_similarity

💔 ERROR The condition FontBakeryCondition:api_gfonts_ttFont had an error: FailedConditionError: The condition FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

💔 ERROR: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts.

com.google.fonts/check/vertical_metrics_regressions

💔 ERROR The condition FontBakeryCondition:regular_remote_style had an error: FailedConditionError: The condition FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

💔 ERROR: Check font follows the Google Fonts CJK vertical metric schema

com.google.fonts/check/cjk_vertical_metrics

💔 ERROR The condition FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

💔 ERROR: Check if the vertical metrics of a CJK family are similar to the same family hosted on Google Fonts.

com.google.fonts/check/cjk_vertical_metrics_regressions

💔 ERROR The condition FontBakeryCondition:regular_remote_style had an error: FailedConditionError: The condition FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Expected behaviour
No errors, or a better error message.

GitHub was down for a while. All GitHub. Would it cause this issue, if you
couldn't reach it?
On Tue, Mar 22, 2022, 15:08 Simon Cozens @.***> wrote:

(NOTE: If your issue is related to a specific check, please consider
mentioning its check-id on the issue title.)
Observed behaviour
Today I'm getting JSON-related errors on anything that makes a call to the
GF API. Did an endpoint change?
💔 ERROR: Check METADATA.pb includes production subsets.

com.google.fonts/check/metadata/includes_production_subsets
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/metadata/includes_production_subsets
💔 ERROR The condition FontBakeryCondition:production_metadata had
an error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)
💔 ERROR: Version number has increased since previous release on Google
Fonts?

com.google.fonts/check/version_bump
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/version_bump
💔 ERROR The condition FontBakeryCondition:api_gfonts_ttFont had an
error: FailedConditionError: The condition
FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting
value: line 1 column 1 (char 0)
💔 ERROR: Glyphs are similiar to Google Fonts version?

com.google.fonts/check/production_glyphs_similarity
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/production_glyphs_similarity
💔 ERROR The condition FontBakeryCondition:api_gfonts_ttFont had an
error: FailedConditionError: The condition
FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting
value: line 1 column 1 (char 0)
💔 ERROR: Check if the vertical metrics of a family are similar to the
same family hosted on Google Fonts.

com.google.fonts/check/vertical_metrics_regressions
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/vertical_metrics_regressions
💔 ERROR The condition FontBakeryCondition:regular_remote_style had
an error: FailedConditionError: The condition
FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting
value: line 1 column 1 (char 0)
💔 ERROR: Check font follows the Google Fonts CJK vertical metric schema

com.google.fonts/check/cjk_vertical_metrics
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/cjk_vertical_metrics
💔 ERROR The condition FontBakeryCondition:remote_styles had an
error: JSONDecodeError: Expecting value: line 1 column 1 (char 0)
💔 ERROR: Check if the vertical metrics of a CJK family are similar to
the same family hosted on Google Fonts.

com.google.fonts/check/cjk_vertical_metrics_regressions
https://font-bakery.readthedocs.io/en/latest/fontbakery/profiles/googlefonts.html#com.google.fonts/check/cjk_vertical_metrics_regressions
💔 ERROR The condition FontBakeryCondition:regular_remote_style had
an error: FailedConditionError: The condition
FontBakeryCondition:remote_styles had an error: JSONDecodeError: Expecting
value: line 1 column 1 (char 0)
Expected behaviour
No errors, or a better error message.
—
Reply to this email directly, view it on GitHub
https://github.com/googlefonts/fontbakery/issues/3675, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADFUS72ILDELB5PUUQNQ3CTVBJAHLANCNFSM5RMGUPXQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

No, it's a GF API check. The problem is that:

production_metadata has no error checking! Bad programmer!
The metadata is now valid JSON, so the lines:

    # can't do requests.get("url").json() since request text starts with ")]}'"
    return json.loads(requests.get(meta_url).text[5:])

are no longer true.

Looks like this was addressed in ac64a301.


ROX-20398: process V1 and V2 compliance results when flag on

Description
Nextgen compliance MVP only pulls over part of the compliance functionality.  So V1 compliance needs to remain fully functional until feature parity is met by nextgen compliance.  So the results need to be stored in both V1 and V2 means to ensure a fully functional experience.  Since the message from sensor to central is changing the pipeline has to handle both old and new version as it is possible that central could be running with the nextgen compliance flag while a sensor may not be.  In such cases, compliance messages from a sensor without the feature flag set or an older sensor will only be processed as V1 compliance.
Checklist

[x] Investigated and inspected CI test results
[x] Unit test and regression tests added
~- [ ] Evaluated and added CHANGELOG entry if required~
~- [ ] Determined and documented upgrade steps~
~- [ ] Documented user facing changes (create PR based on [openshift/openshift-docs]~(https://github.com/openshift/openshift-docs) and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
Here I tell how I validated my change
Turned the flag back on for CI.  This ensured that tests executing the V1 endpoints can still execute successfully while the flag is enabled.
Additionally ran in local cluster with flag on and off to ensure the results were received as expected.
Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

/test gke-upgrade-tests

/test gke-upgrade-tests

/test gke-upgrade-tests

/test gke-upgrade-tests


ChA Erroneous Data

This has been mentioned elsewhere before - no fix known. Channel A (mostly current, occasionally voltage) shows regularly spaced erroneous samples, likely aligned to USB packet boundaries. This does not occur with stock (62.5k) firmware.
@dbogdan Would you take a look at data reliability across firmware compile toolchain? CSV export has landed in PP2 hopefully making such an analysis easier.

@itdaniher, I'll take a look.

Index and value of erroneous values: http://itdaniher.com/p?WDgG

test script: http://itdaniher.com/p?onsV

test script running against stock firmware: http://itdaniher.com/p?aFMm

this issue is confirmed.

@dbogdan Any updates on the issue? Do you need any additional test infrastructure? Once this is fixed, we'll set automatic firmware updates rolling.

@itdaniher, it's on my to do list - tomorrow I will try to look at it.

Thanks.

Using the original 100 ksps firmware (https://github.com/analogdevicesinc/m1k-fw/commit/f4d5abcc5ada965bf70ae1f1bd2e91f30d976165), I don't see issues with some older Pixelpulse2 builds (for example 2015-03-20). However, using the latest versions, the problem is present. Do you know what can cause this difference?

What's the git hash of the build that appears to work? There has been nontrivial overhaul to both Pixelpulse2 and LibSMU over the last month, but given that the issue is reproducible with the provided test script, I believe the issue is in the firmware.
Be wary of using Pixelpulse2 to identify the issue - the erroneous data seems confined to a single sample and is hard to spot from inside Pixelpulse2. CSV export functionality was not yet added in the 20/03/15 builds.

I don't think that the problem can be reproduced with the test script if the first 100 ksps firmware is used.
It's almost sure that the latest firmware changes are also affecting the timing, but I wonder what else it makes things worse.
The working Pixelpulse2 has the 264cf0e hash.

That version of pixelpulse2 does not support 100ksps.
https://github.com/analogdevicesinc/pixelpulse2/tree/264cf0e
uses
https://github.com/analogdevicesinc/libsmu/tree/23a2a6e
https://raw.githubusercontent.com/analogdevicesinc/libsmu/23a2a6e/device_m1000.cpp
hardcodes the sample rate at the lower speed, not 100ksps.
Please test with the first 100ksps firmware, the test script provided, and a recent version of PySMU. Let me know if you need help setting up your test environment.

But in the firmware the sampling rate is hardcoded to 100ksps (tc_write_rc(TC0, 2, 240);).
I'll try the test script.

Ah, gotcha. That's not the case with newer firmwares - let me know how things pan out.

When using my Python program the out of range samples happen on CH A current independent of anything and everything. They appear I'd say greater than 9 times out of 10 and always at the sample
points evenly spaced. And independent of the number of samples as longs as the length is greater than where the first bad spot is. Bad data happens in CH A voltage much less often but in the same places in the data record as the bad current data. This happened from day one with the first working 100KSP firmware.

Unfortunately, this issue is present even on the purportedly "good" versions of Pixelpulse2. It's definitely a firmware timing issue.

I believe I know the cause. It is most likely due to a timing violation for the ADC. It says that all of the communication with the ADC needs to take place 1.2us (tData) after the CONV goes up. Well, the CONV goes up on TC0 RB and down on TC0  RC then the interrupt occurs (with latency), then the communication takes place. The RB is needlessly early (RC-10). I changed it to RC-2 and the problem went away. If someone else would confirm this, that would be great.
tc_write_ra(TC0, 2, 10);
tc_write_rb(TC0, 2, udd_g_ctrlreq.req.wValue-2);
tc_write_rc(TC0, 2, udd_g_ctrlreq.req.wValue);

Thanks for the purposed fix - I'll duplicate and reply with results.

Thanks.
Patrick

From: Ian<EMAIL_ADDRESS>Sent: 7/26/2015 1:14 PM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: Re: [m1k-fw] ChA Erroneous Data (#4)
Thanks for the purposed fix - I'll duplicate and reply with results.

Reply to this email directly or view it on GitHub:
https://github.com/analogdevicesinc/m1k-fw/issues/4#issuecomment-125034729

If you guys are still looking to verify this fix, I have my FFT based
spectrum analyzer program which is very sensitive to even very
small errors at the LSB level ( 100dB dynamic range ) and would
be happy to test out a new binary if you have one to share.
With this program I'll know instantly if there are any errors in the data.
Either way I would love to start using a fixed binary.
Thanks.
Doug
On 7/26/2015 4:15 PM, phdussud wrote:

Thanks.
Patrick

From: Ian<EMAIL_ADDRESS>Sent: 7/26/2015 1:14 PM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: Re: [m1k-fw] ChA Erroneous Data (#4)
Thanks for the purposed fix - I'll duplicate and reply with results.

Reply to this email directly or view it on GitHub:
https://github.com/analogdevicesinc/m1k-fw/issues/4#issuecomment-125034729
—
Reply to this email directly or view it on GitHub
https://github.com/analogdevicesinc/m1k-fw/issues/4#issuecomment-125034905.

Doug:
Dragos was working on this, but he is out on vacation last/this week - so he hasn't seen this thread, and is still out.
Hang on to early next week, and we should have an answer.
-Robin

.@phdussud has sent me a patchset that offer functionality up to 100k, I'm still busy with family, but I will  push a branch with a working firmware .bin. -Ian

The latest commit (https://github.com/analogdevicesinc/m1k-fw/commit/fa28b705e39d98068e5357d2bfb998108995bf1a) seems to help a lot - we will still need to run some additional tests to understand if the problem was completely solved or not.

Sorry for the delay, I was very busy at work. I can confirm that this firmware does not generate bad data during my tests. I would be interested in knowing why this is the case. It seems that the counter interrupt code is shorter (the test and return has been removed). Any other reason?
Date: Thu, 13 Aug 2015 08:46:02 -0700
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>CC<EMAIL_ADDRESS>Subject: Re: [m1k-fw] ChA Erroneous Data (#4)
The latest commit (fa28b70) seems to help a lot - we will still need to run some additional tests to understand if the problem was completely solved or not.
—
Reply to this email directly or view it on GitHub.

Patrick, the software has tried to do too many things in very short time - sometimes, it couldn't finish all the tasks on time, so those bad samples appeared. Some operations were required just once, but they were executed for every sample - the last commit fixes that.


Catalog rebuilder loosing connection wit postgis-operator database.

Some new problem have arised today, that the catalog-rebuilder is loosing the connection to the postgis-operator postgresql database.
The current implementation is a bit bad, since we only create the database connection once when the flask app is initializing.
A better and recommended design pattern, is to ask for a new connection object every time it is needed, and reconnect then if the conncetion are broken.

Added function that return new db-connection if connection are closed.
Closing this issue


When i run 'php artisan serve' all route 404 error

When i run "php artisan serve" and then config API_DOMAIN=http://<IP_ADDRESS>:8000 but all route use dingo can't access it throw 404 error

@tranhuy605 Did you set all the environment variables?
Can you list the routes with php artisan api:routes?
Example dingo related .env variables:
API_STANDARDS_TREE=x
API_SUBTYPE=example
API_PREFIX=api
API_DOMAIN=
API_VERSION=v1
API_NAME="example API"
API_CONDITIONAL_REQUEST=true
API_STRICT=false
API_DEFAULT_FORMAT=json
API_DEBUG=true
JWT_SECRET=

+1 Same problem here.

Laravel or Lumen?
Can you post here your .env file?

Wouldn't you want your API_PREFIX to be null in this case? Otherwise it will want something like http://api.<IP_ADDRESS>:8000

I'm sorry, yes my API_PREFIX option is empty right now and I did remove the port value from the API_DOMAIN and write only "localhost".
Not matters if my project is in port 8002, in my Dingo configuration I say it's localhost and this its works.
Maybe @tranhuy605 this is you need to solve your problem.

@Piquinikis how did you manage to solve this? I've tried every possible solution found on the internet and in this git

@coilnovasince1985jenkins I solved that problem setting an empty string as API_DOMAIN value. Right now, I have the project running in Laravel 5.8 with Dingo 2.0 and haven't any problem.
Good luck!

@gazben please help me, list for me all env required in migration from 5.8 to 6, dingo 2.4.7


Close current tab upon selecting a layout from the search (open layout in-place)

Hello, I'm not sure if this is already possible, but I want this plugin to remove current tab (and maybe others), that is not a part of the selected layout. Right now it opens my layout tab in a new tab, while the current empty/default tab remains dangling. I tried zellij action launch-or-focus-plugin --in-place --floating "file:$HOME/.config/zellij/plugins/zellij-workspace.wasm", but it just covers the current pane/tab and it doesn't see the layout, that is seen without --in-place.

After a quick look at the API, the new_tabs_with_layout function don't include a built in a "in-palce" option.
https://docs.rs/zellij-tile/latest/zellij_tile/shim/fn.new_tabs_with_layout.html
https://docs.rs/zellij-tile/latest/zellij_tile/shim/fn.new_tabs_with_layout_info.html
But there is a switch_session_with_layout which creates a new session and apply the selected layout.
https://docs.rs/zellij-tile/latest/zellij_tile/shim/fn.switch_session_with_layout.html
Is this what you have in mind ?


Refactor RecvPacket handler and Acknowledgement types

Closes: #361
Closes: #369
Description
This PR contains consensus-breaking changes: serialization of successful acknowledgements of packets in onRecvPacket() changed (in order to become compliant with ibc-go).

PR author checklist:

[ ] Added changelog entry, using unclog.
[ ] Added tests.
[ ] Linked to GitHub issue.
[ ] Updated code comments and documentation (e.g., docs/).
[ ] Tagged one reviewer who will be the one responsible for shepherding this PR.

Reviewer checklist:

[ ] Reviewed Files changed in the GitHub PR explorer.
[ ] Manually tested (in case integration/unit/mock tests are absent).

Note that I fixed the Error acknowledgement too in this PR, and added a test. I hardcoded the json output for now; might use serde-json instead depending on outcome of this thread.
Otherwise, everything is in there, and is ready for a final review.


Enable all warnings for C/C++ code

What commandline options are recommended to get a maximum of output for scanning C/C++ code?

There are two ways to get infer to report more: enable more checkers, and let the checkers report more issues. Just as a word of caution I wouldn't recommend doing either, the defaults should already enable all the checkers and issues that give reasonably good signal.
To see what checkers are available you can look for *-only options in infer --help (I guess it would be helpful to list them all somewhere in there too...). However, most if not all of the checkers disabled by default are disabled because they are experimental or generally giving poor signal.
To open the floodgates on the reported issues you can use --no-filtering.

Thank you for explaining these options. I was using it with default options so far. It is worth to see what --no-filtering brings up.
Overall the documentation of infer checks could be improved a little by mentioning the affected language. This is not always the case.
Many thanks for this great tool and all the hard work.


Added new sample react-functional-component

Q
A

Bug fix?
no

New feature?
no

New sample?
yes

Related issues?
none

React Functional Component web part
The purpose of this web part is to make it easier to understand for new developers building their first SPFx web part, when teaching the SharePoint Framework, and to introduce React Functional Components. The web part is a refactoring of the HelloWorld web part that is created by the @microsoft/generator-sharepoint Yeoman generator. The resulting rendered web part should look exactly the same, but the complexity of the code has been significantly reduced, and should be much easier to understand for a newcomer to the framework.

thx @SPDoctor, appreciated. Let's get these demoed in the community call in August. Thanks for sharing.


handle paused subscriptions

just discovered a bug where subscriptions were still active (in our database) when they are paused through the stripe customer portal. this is because the stripe event that gets send to our webhook still has status: 'active' even if you pause the payment collection. this allows users to have an active subscription without paying.
for now, we have disabled the pause subscription feature in the customer portal and need to think about how to deal with this:

what happens to the active subscriptions that have paused the payment (cancel all of them? resume payment manually?)?
how to update our database so that these users resume to the free plan?
how is this implemented correctly so that users are able to pause and switch to the free plan automatically?

moved to our internal notion task board. this is not something that needs development work.


Need more info on Sharing Environments

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] feature request
- [x] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Steps mentioned in Sharing Environments section of README.md are not very clear. Can detailed steps be provided

Any log messages given by the failure

ERROR: getting deployment: error retrieving state: retrieving deployment: no deployments found for environment

Expected/desired behavior

OS and Version?

macOS (Ventura 13.4)

azd version?

1.1.0

Versions

Mention any other details that might be useful
Steps mentioned in Sharing Environments section of README.md are not very clear. Can detailed steps be provided

Thanks! We'll be in touch soon.

That section should only be followed after a successful azd up - and is only relevant for sharing deployed azd environments with colleagues or other machines.


Fix api login to post parameters as json

Fixes #29.

@makuser - I will work on this over the holiday break.

@finish06 sorry, maybe I wasn't clear enough... This is all you need to do to fix it. Just merge it and the issue #29 is fixed. Even though I said I won't have the time to fix it, I did create this patch and fixed the bug.
Complying with the JSON standard is the right thing IMO...
This is really just two lines I changed.
All the rest are just cosmetic changes (v2/v3 -> v5 as default params).

Thank you for the commit.  Merging now and will repackage for PyPi soon.


Gopherjs doesn't work with go 1.12

Right now, gopherjs panics with a message about only supporting 1.11
The gopherjs pr related to this is here https://github.com/gopherjs/gopherjs/issues/887

In the meantime I've made a WASM server that can serve engo games on localhost https://github.com/Noofbiz/engoWasmServer


Run Report Time Zone Bug

There is a Bug in "Run Report".
I am using hesk in NZ , My server time zone is US .
after increasing 17 Hours in hesk settings. New ticket goes to latest date eg 12 Sep right time.
But if you will "Run Reports" it will show into 11 Sep according to server US time Zone.
In other words, Ticket entered on 12 Sep will show in 11 Sep in Run Reports.
Friday, September 11, 2015 1 1 0 16:00:09
How to fix that??

This issue appears to occur in HESK (without Mods for HESK) as well as in Mods for HESK.  Try doing the following:

Make a backup copy of admin/reports.php, so if something goes wrong, you can revert back to this copy.
Open admin/reports.php in a plain-text editor (such as Notepad++)
Find, around line 881: <?php echo hesk_dateToString($k); ?>
Replace that line with: <?php echo hesk_dateToString($k, 1, 0, 0, true); ?>
Save, upload, and test.

I have modified the line 953 on server . But no change.
after entering a job today on 13 sep, it still going to 12 sep report.

Klemen has confirmed the issue on the forums and has stated that there should be a fix in the next HESK release.
Closing this as this is not a Mods for HESK-specific issue.


WFLY-4973 Fix intermittent failures in client side tests that use rem…

…ote EJB (hopefully)

Linux with security manager Build 2000 is now running using a merge of f6db6565763f1892674614e465f8daf18b5fe214

Linux Build 7127 is now running using a merge of f6db6565763f1892674614e465f8daf18b5fe214

Windows Build 2178 is now running using a merge of f6db6565763f1892674614e465f8daf18b5fe214

Linux with security manager Build 2000 outcome was SUCCESS using a merge of f6db6565763f1892674614e465f8daf18b5fe214
Summary: Tests passed: 877, ignored: 284 Build time: 0:06:38

Linux Build 7127 outcome was SUCCESS using a merge of f6db6565763f1892674614e465f8daf18b5fe214
Summary: Tests passed: 2952, ignored: 357 Build time: 0:45:07

Windows Build 2178 outcome was SUCCESS using a merge of f6db6565763f1892674614e465f8daf18b5fe214
Summary: Tests passed: 2952, ignored: 357 Build time: 0:46:08


Haste display of stats does not appear to update with changes to buffs

Describe the bug
In the warlock sim, changing other buff availability like spell crit/spell damage is immediately reflected in the effect stats shown on the left side. However, this doesn't seem to be true for spell haste (from ret pally aura, moonkin aura and wrath of air totem). Adding or removing those buffs doesn't change the displayed haste at all. Note that I think this is purely visual - the simmed dps numbers do change. I didn't check every sim but it appears to also be the case for melee classes and melee haste as well.
To Reproduce
Steps to reproduce the behavior:

Go to Warlock sim
Click on P2 affliction preset
Scroll down to spell haste, which shows 19.27% from base + gear and 0 for all other categories
Toggle the spell haste buffs in the settings on and off ("Haste%" from Swift Retribution or Improved Moonkin Form and "Spell Haste" from Wrath of Air totem)
See that the number does not change in any combination

Expected behavior
I expected the displayed haste values to change as they do when toggling other buffs.
Sim Links and Screenshots
If applicable, add links to your sim settings or screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS] Mac OS Ventura 13.4
Browser [e.g. chrome, safari] Chrome
Version [e.g. 22] 113.0.5672.126

This is correct behaviour, those talents or effects you are describing do not give any haste rating. How haste effects stack:
(Sum of all your haste rating from all sources) / (Haste Rating Coefficient) = Haste Percent from Rating
(Haste Percent From Rating) * (Haste Buff 1) * (Haste Buff 2) * (Haste Buff 3).. etc = Total Haste Percent Multiplier
Since the haste buff from the buffs you mention is multiplicative with rating, the conversion of that buff into equivalent rating would be dependent on your current haste rating. I think it would be confusing for the buff to give you different amounts of fake rating depending on your current rating.
A link to a discussion on the development discord for further reading: https://discord.com/channels/891730968493305867/891807022973087825/1095417637204398252


Xaml.Media.Imaging.SurfaceImageSource variable margins

Edit I realized the problem only reproduces if I have the Image in a ScrollViewer (i.e. the left margin is always 2px otherwise) and so don't care about this anymore.

Describe the bug
Tutorial on SurfaceImageSource for context.
ISurfaceImageSourceNative::BeginDraw returns a surface that is bigger than the pixelWidth and pixelHeight you parse to the SurfaceImageSource constructor.
The problem is that the left margin actually varies between different runs of the program. The top margin is always 0px. The right and bottom margins change in proportion with the hight and width.
If I translate my rendering with a left offset of 4px. I will get only my clear colour displayed some of the time. Other times I will get a pixel or two of SurfaceImageSource's clear colour 😢.
I can get the actual size from IDXGISurface::GetDesc but that doesn't help.
Maybe being a pixel or two off is not the end of the world.
Steps to reproduce the bug
<ScrollViewer HorizontalScrollMode="Enabled" HorizontalScrollBarVisibility="Visible">
    <Image Margin="960,780,0,0" Stretch="None" x:Name="SentenceBySentenceImage"/>
</ScrollViewer>

NuGet package version
WinUI 3 - Windows App SDK 1.5.4: 1.5.240607001

There is no here of whether or not the offset parameter is being used correctly. It is also true that the documentation for this parameter isn't good in the reference. The Windows.UI.Xaml version only describes it as "Receives the point (x,y) offset of the surface that will be drawn into.Receives the point (x,y) offset of the surface that will be drawn into." where the Microsoft.UI.Xaml version doesn't even document anything.
Looking at the DirectComposition documentation for IDCompositionSurface::BeginDraw and ICompositionDrawingSurfaceInterop::BeginDraw provide some extra context for the parameter with the same name. That is, you need to offset your drawing rectangle by the x and y values given in the offset parameter.

Yes I forgot about the [out]          POINT      *updateOffset parameter.
Thanks!


parallelize glitch project

Separates training and testing set runs into separate directories for ease of mind
Utilizes mldatafind find_data when querying strain
Adds analyze_testing_set flag
Parallelizes pyomicron condor dag generation jobs using a ProcessPool
Allows querying glitches from multiple segments (i.e. distinct trigger files) for larger datasets

Just to make sure, this is still subject to the issues outlined in #198 ? (Not that that would hold this up, since this is valuable in its own right, just clarifying)

Just to make sure, this is still subject to the issues outlined in #198 ? (Not that that would hold this up, since this is valuable in its own right, just clarifying)

Unfortunately yes. Will have to wait to hear back from omicron developers.

Sounds good, this is great either way


CNDIT-396 : Implement xml part 1

CNDIT-396 : Implement xml part 1

Merge conflict, please resolve.


WIP: Avoid CsvPreviewController depending on attachments being on the filesystem

The motivation to do this is to make it easier to switch over to use AssetManagerStorage in AttachmentUploader.
This PR does the following:

Simplifies/improves CsvPreviewController and its tests
Splits CsvFileFromPublicHost.new into two methods so controller has access to HTTP response from range request
Uses HTTP response from CsvFileFromPublicHost to implement CsvPreviewController#incoming_upload_exists? and #upload_exists? without accessing file system

I'm not very happy with how this leaves the implementation of CsvFileFromPublicHost, but I think it'll do for now.
Things still left to do:

[ ] Test on development VM and/or integration
[ ] The comparison of the placeholder URL in CsvPreviewController#incoming_upload_exists? might be wrong because of host differences

/cc @chrisroos @chrislo

I deployed this branch to integration and visited a csv preview. I was able to preview the CSV file as expected.

The location returned from @csv_response.headers['Location'] for a file that is being virus-scanned is https://www-origin.integration.publishing.service.gov.uk/government/placeholder. The value of placeholder_url is https://whitehall-admin.integration.publishing.service.gov.uk/government/placeholder so attempting to preview a pending csv file gives a 404 instead of redirecting to the placeholder. Perhaps we can fix this by comparing the paths rather than the full host?

I've addressed the issue in the previous comment in 4a9434d.

Rebasing on master and force-pushing before merging.

@chrislo Thanks for testing, fixing and merging this 👍


Issue #62: Breadcrumbs

We have breadcrumbs now!

Just keeping this updated with changes to master so we don't have massive merge conflicts down the line


env.asExternalUri rejects ws and wss schemes

If you call asExternalUri with a ws:/ URI, you get an error:

Invalid scheme 'ws'

It seems like this should work. Even though VS Online doesn't support web sockets yet, this should fine in a container, so it should be possible to map those URLs without having to change the protocol (and change it back on the result).
https://github.com/microsoft/vscode/blob/e904a5f646af4c5a667a12393351d47b806e885a/src/vs/workbench/api/common/extHostWindow.ts#L60

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


fix build on archlinux (pkg-config cblas)

@mseri are you happy with the revision, do you think we can merge this now?

I think it is fine to start with it, we can add more fine checks on when cblas linking is actually needed in a separate PR if it ever becomes necessary


Update to use Refract 0.2

This uses a member element per this PR:
https://github.com/refractproject/refract-spec/pull/27
cc @danielgtaylor

LGTM :+1:

Alright, spoke via chat to resolve the last few issues and I think this is good. Ready to be merged. :+1: