[kmac,dv] Remove err_processed from shadow reg DV logic

PR lowRISC/opentitan#22794 moved the err_processed field from the CFG_SHADOWED shadow register to the CMD register.
However, the shadow_reg_wr function was not adapted. This function assumes that writing to the CFG_SHADOWED reg clears the update error field. As this now can only be done with the CMD register, this is not true anymore. Hence, this commit removes this assumption.
Closes lowRISC/opentitan#23083.

The test mentioned in #23083 is now passing again:
util/dvsim/dvsim.py hw/ip/kmac/dv/kmac_masked_sim_cfg.hjson -i kmac_shadow_reg_errors_with_csr_rw --tool vcs --build-seed<PHONE_NUMBER>7980121648949789282063322266496016209500883225240730864920651071561 --fixed-seed<PHONE_NUMBER>4608352040777255684192131175685792135976954976323269401727040107622 -v m
INFO: [dvsim] [proj_root]: /home/dev/src
INFO: [SimCfg] [scratch_path]: [kmac] [/home/dev/src/scratch/kmac_dv_fix/kmac_masked-sim-vcs]
ERROR: [Regression] Test "kmac_throughput" added to regression "V3" not found!
INFO: [FlowCfg] [results]: [kmac]:
## KMAC/MASKED Simulation Results
### Friday July 05 2024 08:37:37 UTC
### GitHub Revision: [`21e07594b9`](https://github.com/lowrisc/opentitan/tree/21e07594b9a789640a9d12e3268ff4e29ce76282)
### Branch: kmac_dv_fix
### [Testplan](https://opentitan.org/book/hw/ip/kmac_masked/data/kmac_testplan.html)
### Simulator: VCS
### Build randomization enabled with --build-seed<PHONE_NUMBER>7980121648949789282063322266496016209500883225240730864920651071561

### Test Results
|  Stage  |                Name                 | Tests                              |  Max Job Runtime  |  Simulated Time  |  Passing  |  Total  |  Pass Rate  |
|:-------:|:-----------------------------------:|:-----------------------------------|:-----------------:|:----------------:|:---------:|:-------:|:-----------:|
|   V2S   | shadow_reg_update_error_with_csr_rw | kmac_shadow_reg_errors_with_csr_rw |      1.310s       |    192.145us     |     1     |    1    |  100.00 %   |
|   V2S   |                                     | **TOTAL**                          |                   |                  |     1     |    1    |  100.00 %   |
|         |                                     | **TOTAL**                          |                   |                  |     1     |    1    |  100.00 %   |

I am merging this, all relevant checks have passed. This PR only touches DV code but nothing that impacts any of the FPGA tests.


Fixed a regression,

the fix for #260 was lost. Re-applied.
Regression was found and reported here: https://www.orbiter-forum.com/threads/d3d9client-development.16787/post-604929

PR to wrong repo. github is such a PITA for simple tasks :(


Limitation of omc describe nodes comand

There is a limitation in the omc describe nodes command due to the content in the must-gather file.
I have opened a RFE [1] for the must-gather to include the output of oc describe nodes, so if that is included in the must-gather, omc should use it for the omc describe nodes.
[1] https://github.com/openshift/must-gather/issues/337

ocm describe nodes will need to implement a veneer layer the same way [kubectl|oc] does, where in data is pulled from the appropriate files (from a must-gather), vs from a cluster API.
https://github.com/kubernetes/kubectl/blob/master/pkg/describe/describe.go#L201
https://github.com/kubernetes/kubectl/blob/master/pkg/describe/describe.go#L3581-L3735

Hi @sferich888 omc already has the describe subcommand implemented, but I think the limitations that @oarribas is speaking about are for example the resource requests and limits not shown by omc describe node <name> (this because the must-gather don't provide the manifests for all the pods in the cluster)

Closing it since the needed information to implement this feature is missing from the must-gather.


Polkadart Follow-up

Project Abstract
Polkadart Grant

We would like to propose support for smart contracts within the Polkadart library. The following features would be included:
Abi encode & decode
Support for contract metadata v0, v1, v2, v3, v4.
Deployment of WASM contracts
Send contract transactions
Additionally, we are proposing to make a centralized documentation dedicated to all levels of developers, from beginners to experts. We want to create a website like https://polkadot.js.org/docs where the person would find many tutorials, use cases, scenarios, explain concepts of Polkadot and how to use Polkadart with all best practices and security in mind.
Only for context, every package has its documentation as delivered in the previous grant, but they are focused on experienced Flutter/Dart developers and people who already understand how Polkadot works.
We believe that this new documentation would be a great addition to the community as it increases the number of people who will understand the lib and the whole concept of Polkadot, allowing more Flutter/Dart developers to get on board the Polkadot ecosystem.

Grant level

[ ] Level 1:  Up to $10,000, 2 approvals
[x] Level 2:  Up to $30,000, 3 approvals
[ ] Level 3:  Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

[x] The application template has been copied and aptly renamed (project_name.md).
[x] I have read the application guidelines.
[x] Payment details have been provided (Polkadot AssetHub (DOT, USDC & USDT) address in the application and bank details via email, if applicable).
[x] I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
[x] The software delivered for this grant will be released under an open-source license specified in the application.
[x] The initial PR contains only one commit (squash and force-push if needed).
[x] The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
[ ] I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

Hello @semuelle, thank you for the reply.
I believe the team never considered other possibilities. I will talk with them and find out. Are there any other resources you could point us to for reading to help with the decision, mainly the "Decentralized Futures Programs"?
Please let me know if I understood correctly. There are three possible paths:

If we don't expect to need more funding after this one, possibly considering "the work is done," at least from our part/team, submit this project as is.
If we consider that this library could be continuously improved, like polkadot-js, we could submit the new features and keep doing the work as a maintenance grant, which means we would keep working on it until we or you guys decide that the maintenance grant is no longer needed.
Get this application and submit the new features + a maintenance period, similar to #2 but still divided with milestones (features + docs + maintenance) and a more limited maintenance time in mind.

The first would be a typical Grant, the second a Maintenance Grant, and the third a project at the Decentralized Futures Program.

Hello @semuelle, I've read a bit about each program, and at least from what I've read:
Please feel free to correct me. However, it seems this application doesn't qualify for a maintenance grant. The smart contract's new feature is a whole new package, and I consider it a large feature to implement. At the repository, we have the following paragraph:
Maintenance grants, as the name suggests, are meant to allow teams/individuals to maintain a particular project, and not to continue its development or implement larger features. Please use the traditional application process for this purpose.

We would be between a typical grant and a Decentralized Future Program, am I correct? However, I've talked with the team, and they do have an interest in continuing (if possible) working on the library after what is currently in the application is done. As seen in the repository, from the PRs/Issues/Discussions of developers using the library. There are some great ideas that would be very beneficial to implement and thus increase the adoption of Flutter developers to the Polkadot system even more.
Considering that, perhaps, would you recommend the best path to go forward?

any comments, @leonardocustodio?

Hello @semuelle, sorry the late reply. Yes, totally agree with you, I posted in the polkadot forum a few days ago, per DF requirements: https://forum.polkadot.network/t/decentralized-futures-polkadart/7117
I will make the application in the next few days. Should we close here already?

Let's close this one for now. We can reopen it later if necessary. Thanks, @leonardocustodio.

Hello @semuelle, After carefully evaluating the Decentralized Future Programs, we have given up on submitting an application. Unfortunately, we could not figure out how to fund the library's maintenance and development beyond 2024. Our maintainers have limited availability, and a project that would be able to fund the library would be too much work for us. We want to continue with the Grants Program if possible.
Thanks

Awesome, I believe that with the new docs website, we can also include analytics to include this information.
Also, I will add a new last thing to the roadmap (without changing the price). We now have the new offline metadata standard, so I would like to support that in our lib.

Done, if you can take a second look @semuelle .
Appreciate it :)

While waiting for other committee members, we recently started doing KYB/KYC checks for grants, could you please use this KYB link to submit verification for your registered entity? Thanks!

Actually, @leonardocustodio, I see that you already started KYB for the DF application. You should have just received an email from Sumsub with a link to that file, so you can continue from there. It seems that there is still some company documentation missing.

Hello @semuelle , I've resent the doc, but they declined it again. I'm not sure they understand how things work here in Brazil, they are requesting:
a document that establishes all ultimate beneficial owners (shareholders) of the company. This can include a recent excerpt from the company register, a certificate of incumbency, a register of shareholders, or other similar document

I'm sending it, but they refuse because the data is older than 12 months. I'm not sure how it works in other countries, but here, this document has no "remission" unless the company wants to change something. So the date will always remain the same. I don't know what to do here.
Can I change the application to my name instead of the company's name so we can go with KYC? Or do the grants only accept KYB?

I'm sending it, but they refuse because the date is older than 12 months. I'm not sure how it works in other countries, but here, this document has no "re-emission" unless the company wants to change something. So the date will always remain the same. I don't know what to do here.

Hi @leonardocustodio. Sorry, I'm afraid we rely on our KYB provider with these judgements. Is there a way to re-request the same document? I see that there are at least three different dates in that document. An indication that this document is still valid would probably suffice. Perhaps @dsm-w3f has some suggestions here.

Ok, after talking with the accounting department, I got another document that would serve the purpose. They KYB has been approved now. Thanks.


Add Xvfb and fix Travis build

Fixed #95 by providing xvfb and configuration of a virtual display.

@serin-delaunay all checks have passed :tada: 🎆
This PR is connected to that one in the dockerfile's repository:
https://github.com/Wangscape/wangscape-build-dockerfile/pull/2
I've added these two lines:
Xvfb :1 -screen 0 1600x900x24 &> xvfb.log &
DISPLAY=:1.0; export DISPLAY;

to .travis.yml, because I think a display configuration should be as close as possible to running xvfb-run (it uses the same display's settings). It could be placed in a separate script or even (I'm not sure, if it's possible or recommended) in a Dockerfile, but I think that wouldn't be as clear as it is now.

Awesome work!


Unable to use cssnext as a processor with gulp-postcss

I'd like to use the cssnext plugin pack with gulp-postcss, as my first processor to be followed by a set of other cherry picked postcss plugins. The trouble is that I can't figure out how to get cssnext working with gulp-postcss. In the following code snippet I think I'm using cssnext() wrong within the processors array, but everything I've tried to correct it fails.
var gulp = require('gulp');
var postcss = require('gulp-postcss');
var cssnext = require('cssnext');

config = {
  cssDistPath: './dist/css',
  cssSrcGlob:  './src/css/**/*.css'
};

gulp.task('css', function () {

  var processors = [
    cssnext({
      features: {
        calc: {
            preserve: true
        }
      }
    })
  ];

  return gulp.src(config.cssSrcGlob)
    .pipe(postcss(processors))
    .pipe(gulp.dest(config.cssDistPath));

});

Do you have any suggestions on how to get this working, or a better configuration?

@kabadesu Give us log of your error, please.

@TrySound, sorry here:
 [TypeError: object is not a function]
  name: 'TypeError',
  message: 'object is not a function',
  stack: 'TypeError: object is not a function\n    at LazyResult.run (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:152:24)\n    at LazyResult.asyncTick (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:80:29)\n    at processing.Promise.then._this2.processed (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:106:20)\n    at $$$internal$$initializePromise (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:351:9)\n    at new $$es6$promise$promise$$Promise (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:655:9)\n    at LazyResult.async (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:105:27)\n    at LazyResult.then (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:68:21)\n    at Transform.stream._transform (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:44:10)\n    at Transform._read (_stream_transform.js:179:10)\n    at Transform._write (_stream_transform.js:167:12)',
  showStack: false,
  showProperties: true,
  plugin: 'gulp-postcss' }

@kabadesu can you post error.stack content. It is difficult too read it there.

Seems like problem with Prmise polyfill.
Quick fix is to migrate to node 0.12 or io.js.

@ai I'm not sure how to get error.stack content, sorry. I'm not amazing at JavaScript. I using console.trace if that helps any?
Trace: { [TypeError: object is not a function]
  name: 'TypeError',
  message: 'object is not a function',
  stack: 'TypeError: object is not a function\n    at LazyResult.run (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:152:24)\n    at LazyResult.asyncTick (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:80:29)\n    at processing.Promise.then._this2.processed (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:106:20)\n    at $$$internal$$initializePromise (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:351:9)\n    at new $$es6$promise$promise$$Promise (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:655:9)\n    at LazyResult.async (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:105:27)\n    at LazyResult.then (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:68:21)\n    at Transform.stream._transform (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:44:10)\n    at Transform._read (_stream_transform.js:179:10)\n    at Transform._write (_stream_transform.js:167:12)',
  showStack: false,
  showProperties: true,
  plugin: 'gulp-postcss' }
    at Transform.errorHandler (/Users/murray/Development/postcss/gulpfile.js:17:11)
    at Transform.emit (events.js:117:20)
    at onwriteError (_stream_writable.js:238:10)
    at onwrite (_stream_writable.js:256:5)
    at WritableState.onwrite (_stream_writable.js:96:5)
    at afterTransform (_stream_transform.js:99:5)
    at TransformState.afterTransform (_stream_transform.js:74:12)
    at handleError (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:68:7)
    at $$$internal$$tryCatch (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:304:16)
    at $$$internal$$invokeCallback (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/node_modules/es6-promise/dist/es6-promise.js:316:17)

I'll have a go at node 0.12

In node 0.12.2 I get the following error:
Trace: { [TypeError: object is not a function]
  name: 'TypeError',
  message: 'object is not a function',
  stack: 'TypeError: object is not a function\n    at LazyResult.run (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:152:24)\n    at LazyResult.asyncTick (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:80:29)\n    at processing.Promise.then._this2.processed (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:106:20)\n    at LazyResult.async (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:105:27)\n    at LazyResult.then (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:68:21)\n    at Transform.stream._transform (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:44:10)\n    at Transform._read (_stream_transform.js:179:10)\n    at Transform._write (_stream_transform.js:167:12)\n    at doWrite (_stream_writable.js:301:12)\n    at writeOrBuffer (_stream_writable.js:288:5)',
  showStack: false,
  showProperties: true,
  plugin: 'gulp-postcss' }
    at Transform.errorHandler (/Users/murray/Development/postcss/gulpfile.js:17:11)
    at Transform.emit (events.js:129:20)
    at onwriteError (_stream_writable.js:317:10)
    at onwrite (_stream_writable.js:335:5)
    at WritableState.onwrite (_stream_writable.js:105:5)
    at afterTransform (_stream_transform.js:99:5)
    at TransformState.afterTransform (_stream_transform.js:74:12)
    at handleError (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:68:7)
    at runMicrotasksCallback (node.js:337:7)
    at process._tickCallback (node.js:355:11)

@kabadesu please get stack by console.log(error.stack)

error.stack already has all trace

TypeError: object is not a function
    at LazyResult.run (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:152:24)
    at LazyResult.asyncTick (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:80:29)
    at processing.Promise.then._this2.processed (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:106:20)
    at LazyResult.async (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:105:27)
    at LazyResult.then (/Users/murray/Development/postcss/node_modules/gulp-postcss/node_modules/postcss/lib/lazy-result.js:68:21)
    at Transform.stream._transform (/Users/murray/Development/postcss/node_modules/gulp-postcss/index.js:44:10)
    at Transform._read (_stream_transform.js:179:10)
    at Transform._write (_stream_transform.js:167:12)
    at doWrite (_stream_writable.js:301:12)
    at writeOrBuffer (_stream_writable.js:288:5)

It is not a Promise polyfill problem. Seems like some plugin is object,

@w0rm can I left it on you? I need to prepare to tomorrow flight

I will take a look at this tonight

On 08 Apr 2015, at 18:09, Andrey Sitnik<EMAIL_ADDRESS>wrote:
@w0rm can I left it on you? I need to prepare to tomorrow flight
—
Reply to this email directly or view it on GitHub.

@ai does it mean I should revert to previously used  processors.forEach(processor.use. bind(processor)) instead of postcss(processors)?

@w0rm I think both methods will have same result. But forEach seems like more compilcated.

@ai  it silently failed for me, but when I changed postcss(processors) to var processor = postcss(); processors.forEach(processor.use. bind(processor)) then it worked. Don't know what should be the test case.

Published 5.0.1, @kabadesu please verify the fix

You are amazing, that did the trick. Thanks everyone.

Hello! I have same problem with gulp-replace plugin https://github.com/lazd/gulp-replace Do you have any idea to solve this?

@Sigizmund2012 I'm not sure this is the same problem. Ask in gulp-replace repo.

Ok, I write him an issue https://github.com/lazd/gulp-replace/issues/60

I believe I'm having the same issue, I'm using 6.0.0
Here's my setup
var gulp      = require('gulp'),
    postcss   = require('gulp-postcss'),
    cssnext   = require('gulp-cssnext');

var processors = [
        cssnext({
            'browers':          ['last 2 version'],
            'customProperties': true,
            'colorFunction':    true,
            'customSelectors':  true,
            'sourcemap':        true,
            'customProperties': true,
            'compress':         false
        })
    ];

gulp.task('css:dev', function(){
  return gulp.src('app/assets/css/main.css')
             .pipe(postcss(processors))
             .pipe(gulp.dest('build/assets/css/'));
});

And the error
/media/azuki/Kuma/Projects/buildsys/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:62
                throw new Error(i + ' is not a PostCSS plugin');
                      ^
Error: [object Object] is not a PostCSS plugin
    at Processor.normalize (/media/azuki/Kuma/Projects/buildsys/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:62:23)
    at new Processor (/media/azuki/Kuma/Projects/buildsys/node_modules/gulp-postcss/node_modules/postcss/lib/processor.js:25:29)
    at postcss (/media/azuki/Kuma/Projects/buildsys/node_modules/gulp-postcss/node_modules/postcss/lib/postcss.js:55:12)
    at Transform.stream._transform (/media/azuki/Kuma/Projects/buildsys/node_modules/gulp-postcss/index.js:43:5)
    at Transform._read (_stream_transform.js:179:10)
    at Transform._write (_stream_transform.js:167:12)
    at doWrite (_stream_writable.js:301:12)
    at writeOrBuffer (_stream_writable.js:288:5)
    at Transform.Writable.write (_stream_writable.js:217:11)
    at write (/home/azuki/.npm-packages/lib/node_modules/gulp/node_modules/vinyl-fs/node_modules/through2/node_modules/readable-stream/lib/_stream_readable.js:623:24)

@hussienliban gulp-cssnext is wrapper on gulp. It's not postcss plugin. Use https://github.com/cssnext/postcss-cssnext

@TrySound  thank you


Develop

Codecov Report

Merging #9 (68a7f23) into main (6adc787) will increase coverage by 0.85%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main       #9      +/-   ##
==========================================
+ Coverage   97.56%   98.41%   +0.85%
==========================================
  Files          10       11       +1
  Lines          41       63      +22
==========================================
+ Hits           40       62      +22
  Misses          1        1

Impacted Files
Coverage Δ

lib/find_my_personal_web/router.ex
100.00% <ø> (ø)

...personal_web/controllers/api/teacher_controller.ex
100.00% <100.00%> (ø)

..._my_personal_web/controllers/teacher_controller.ex
100.00% <100.00%> (ø)

lib/find_my_personal_web/views/api/teacher_view.ex
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Layer Functions

Layers can define functions that are processed either before or after all other processing is done on that layer.
e.g., an image layer may define a function that takes that image and pixelates it for some stylistic effect.

Possibly include some pre built layers.
e.g., A mask where the RGB values translate the underlying pixels allowing you to move art rather than just mask it.


Separate cogs into core and optional

Refactor to have a set of core cogs which are always loaded and other optional cogs that are only loaded if they've been configured to be. Suspended until configuration refactor is complete. #165

(Also known as plugins)


[ISSUE #8059] Fix some typos in DefaultLitePullConsumer and LitePullConsumer

Which Issue(s) This PR Fixes
Fixes https://github.com/apache/rocketmq/issues/8059
Brief Description
Fix some typos:
subExpresion => subExpression
hether => whether

Hi @hanmz you need to merge the develop branch to include the latest unit test fixes.


Add rake task for rebuilding the yarn audit pending list

Run from an engine, this will rebuild that yarn audit pending list in the .yarnrc.yml file. See https://github.com/ManageIQ/manageiq-ui-classic/pull/9241 for an example of the output generated.

There are some conflicts in the rubocops, so I'm leaving the rest.


cf install-plugin cfdev never finishes

Hello
cf install-plugin cfdev never finishes,
and there is no any errors or warning why it cann't or what it is doing.
P.S. Environment Windows 10, Gish Bash and cmd.

the same with Windows cmd

@paulvi It looks like cflocal hangs on install for you too: this can't be a CF Dev specific issue. I'm afraid that we're ill-equipped to help you with this issue since our code hasn't even had the chance to run yet. Perhaps the cf cli team can help you.

Raised as https://github.com/cloudfoundry/cli/issues/1647


change branch name to master

change clone of gdal trunk to master, as the trunk branch does not exist anymore

Coverage remained the same at 84.065% when pulling d16c3c33d2d0a0d26b24db937e43bf98268b7539 on rbuffat:fix_gdal_dev_checkout into 8282a8d8da6f5478c5601499fdb758fcabd5c746 on Toblerity:master.

Merci beaucoup, René ! I'm grateful for your help in maintaining this project.

@sgillies thanks! It's a great platform to learn new stuff, and I use Fiona quite regularly.
Currently Fiona fails to install against gdal master, but I suspect it is a gdal issue: https://github.com/OSGeo/gdal/pull/414
Also it seems that the build of gdal seems to timeout sometimes on travis, but only for the gdal master branch.


app/irc: def-setting don't eval letvars

if not done this way it will try to call letvars and :user doesn't exists

Sorry, I have to reject this. This problem runs deeper (originating in def-setting!) and I already have a large-scale fix in the works. It will be up within the next couple of hours.


RSTeditor Example FileChooser not working in Python3

Versions

Python: 3.5.2
OS: OSX 10.12
Kivy: 1.9.1/ 1.9.2
Kivy installation method: Kivy.app/ pip install

Description
The example code of  RSTeditor here:
https://kivy.org/docs/api-kivy.uix.filechooser.html
In Python3 (Both the Kivy3.app and the 1.9.2 in a other copy of Python3.5.2 ):the FileChooser shows and then is the mouse wheel of left or right button moved IT JUST close.
In Python2 (Both the Kivy2.app and a 1.9.2 Kivy in other 2.7.13): the FileChooser works and can be scrolled by mouse wheel and files can be selected.
SO is there any problem with Python3 and the FileChooser?
Code and Logs
Not logs show up at all. So I cannot find what caused this.

Then I update to python 3.6 with Kivy 1.9.1 and this bug just went away.


chore!: Remove manual serialization for Serde

Related issue(s)
(If it does not already exist, first create a GitHub issue that describes the problem this Pull Request (PR) solves before creating the PR and link it here.)
Resolves (link to issue)
Description
Discussed internally: We originally wanted an encoding which could be implemented in other languages easier. I thought that having a manual encoding and then specifying this in some documentation would have been the best way for this. Even if this was the case, we have had two serialization bugs and the effort for folks to modify this code has become unproductive.
There are still solutions to the problem of having other languages implement a deserialization strategy, they can choose to use rmp/json for example, which is available in most languages. For now, we use rmp by default with the read and write methods.
Summary of changes
(Describe the changes in this PR. Point out breaking changes if any.)
Dependency additions / changes
(If applicable.)
Test additions / changes
(If applicable.)
Checklist

[ ] I have tested the changes locally.
[ ] I have formatted the changes with Prettier and/or cargo fmt with default settings.
[ ] I have linked this PR to the issue(s) that it resolves.
[ ] I have reviewed the changes on GitHub, line by line.
[ ] I have ensured all changes are covered in the description.

Additional context
(If applicable.)

Closes #228

I think you can remove to_u16() and from_u16() in black box func file

I think you can remove to_u16() and from_u16() in black box func file

This was there prior to the manual serialization work so we probably want to check if this is being used in other places.

This was there prior to the manual serialization work so we probably want to check if this is being used in other places.

I see it only being used in the consistent_index test in black_box_functions.rs


Warning when folks using default SystemdCgroup (false) when running in Systemd environments

Folks,
We've had folks run into this situation quite a few times:
https://github.com/kubernetes/kubernetes/issues/115581#issuecomment-1421048641
Essentially the default in our config.toml in containerd for SystemdCgroup is false and most of k8s has been the opposite (example https://github.com/kubernetes/kubeadm/issues/2376)
So would we may be at least add a warning in our logs that systemd is ON and their config is NOT reflecting that?
Note there's a handy IsRunningSystemd we can use to check and log a message: https://cs.k8s.io/?q=IsRunningSystemd&i=nope&files=&excludeFiles=&repos=kubernetes/kubernetes
thanks!

/assign


arabic datepicker not working

setting locale to :ar and using the datepicker results in:

showing assyrian calendar that is not used anymore in arabic language as mentioned in this PR #2595
date is not being set

what i tried so far:

destroying datepicker object and reinitializing with datepicker locale to en also doesn't set date
change rails locale to :en and datepicker works normally

I have the same problem for the french language, have you found a solution ?

+1

Using italian locale.
Selected date is displayed properly formatted, but the input field's value is not actually set.

I'm hunting down the problem through a dummy app.
I managed to have the picker's value be set on the input.
Still, when editing a record, the value of the input is not shown until the picker is activated once.
The problem seems to stem from how you include your own locale in your app:

I wasn't using rails-i18n gem and added locales manually on my own (app is 5 years old atm)
Removing my locale files and adding the gem got me a good way forward

Closed by https://github.com/sferik/rails_admin/commit/01e8d5fc8ec94e68af6fdbd80759a751cd83f74a .


add apache ignite helm chart

Hey @seanknox , @viglesiasce , any updates on it? Are we doing everything properly?

@aasiutin it looks like the DCO checker is having issues. Can you make sure your commits are signed?
https://probot.github.io/apps/dco/

@viglesiasce I've just fixed it and now all commits are signed

/ok-to-test

/retest

Thanks for your patience @aasiutin!
/lgtm


Releases are sorted by creation time

I have a very particular use case for this action.
I have a repository that doesn't change often (= no new commits) which contains a CI/CD flow that produces periodic releases, with the run number as the bugfix version (i.e. x.y.${{ github.run_number}}. (The code itself is in another repo, which does change frequently.)
After the upload of a release, this action is used to download older releases.
According to https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28:

The latest release is the most recent non-prerelease, non-draft release, sorted by the created_at attribute. The created_at attribute is the date of the commit used for the release, and not the date when the release was drafted or published.

At build run 20, 30, ... 100, the newly upload release is deleted and not the n-1 one, because the created_at attribute is identical between the two releases.
To fix this, releases need to be sorted by ID (or some other attribute) before keep_latest is applied.

It should fix the issue, will reopen if needed. Thanks!


Add guide: "Easy profiling for Node.js"

Adding a guide on the use of the tick processor and the built in Node.js
profiler to understand application performance.

cc @Qard

LGTM. :+1:

It'd be very handy. :+1:

This looks awesome. LGTM

@nodejs/website  @nodejs/benchmarking

LGTM

Merged, although it's not linked on the site yet.

Thanks! What is the process for getting this linked from the website?

@matthewloring Add a link to the website. ;)

@fhemberger Where would the link be added? I can probably handle it if nobody else has the time/desire.

@bnb Oh, that would be great! Create a new page "Guides" under "Docs" and add the link there.
Thanks!

The plan is to have a directory page for guides, topics and reference pages. I just haven't got around to making it yet. A static page would probably be fine for now too, if you want to push that through.

@bnb Were you able to look into including this in the website? I am happy to look into it but don't have any experience with the website code base yet.

@matthewloring Sorry, I've had a lot on my plate the last couple weeks (family member had heart surgery). I can try to do this now.

@fhemberger When you say create a new page "Guide" under "Docs", what exactly do you mean? Sorry for being thick.

@bnb Add the page to the navigation structure in site.json and to /layouts/docs.hbs.

@fhemberger Thank you! :100:


Implement fanout CQs

These are continuous queries that have no GROUP BY time clause. They should be evaluated against specific measurements at write time and create new points to be written before they get sent to Raft.

whoops, dupe


feat(aws_instance): add instance market options block

what

The PR enables the terraform instance_market_options block for this ec2 module
add a new tfvars as a consumer/Terratest for the ec2 spot instance inside examples/complete directory

why

Spot Instances can offer a great discount compared to On-Demand pricing based on AWS documentation

references

there are no issues related to this PR, this PR is made for the ec2 module improvement

others:

module documentation is updated (guide: Updating Module Documentation)

update the versions.tf files in the example directories as a complement (guide: Updating the Module Examples)

(done) terraform testing (plan+apply) is performed by using examples/complete directory on current PR branch feature/spot-instance-enablement targeting self-owned AWS cloud account

make init && make readme have been re-ran, @joe-niland, Thank you

That new example directory isn't getting run by terratest. Was adding the example strictly as a way of documenting the feature?
Here are some options worth considering

How come we can't make the existing tfvars test use the new input? This would be ideal.

If that's not possible, is it possible to add a new tfvars in the existing examples complete directory instead of adding a new terraform example directory? If so that would be advisable because it would be less code to maintain and update.

As-is (example directory, no automated test)

Here is the existing tfvars https://github.com/cloudposse/terraform-aws-ec2-instance/blob/main/examples/complete/fixtures.us-east-2.tfvars which could then have an additional tfvars beside it such as fixtures.us-east-2.spot.tfvars.
Here is how the tfvars get inserted into the test https://github.com/cloudposse/terraform-aws-ec2-instance/blob/c4be48095dbccb409a776cd5c08959467696c776/test/src/examples_complete_test.go#L27

Hi @nitrocode, thanks for the insight
Correct, using the existing example directories is sufficient.
i have updated my code to use the current /complete test directory, these are the changes that may be applicable:

i have created the fixtures.us-east-2.spot.tfvars as new tvfars. I just left the current tfvars as is inside the examples/complete directory, so the user/terratest able to provision a sample of an EC2 instance with the spot instance disabled. The new tvfars will introduce this new variable instance_market_options_enabled = true

modified the test/src/examples_complete_test.go to include new tfvars and spot instance request ID output test

for the terratest reference, the output ID prefix is sir-

Thanks for addressing the changes.
How come the _enabled flag is still used? I thought it was removed when this comment was raised?
https://github.com/cloudposse/terraform-aws-ec2-instance/pull/202#discussion_r1719397421

@nitrocode  is it instance_market_options for the naming?

/terratest

@haidargit see code annotations and test failures

Thanks for resolving some of the issues.
There seem to be a few remaining. Please fix all of them and then resubmit the PR. I moved it to a draft for now.

Hi @nitrocode,
i adjusted the output.tf files on the spot instance part to use length function to fix the tflint warnings
Could you kindly review the latest commit when you get a chance? Much appreciated!

@nitrocode,
this was spot instance testing conducted by terraform apply using fixtures.us-east-2.spot.tfvars on /complete directory. The PR has also set the default to use normal EC2 instance provisioning (commit 0c3e3b3)
case 1:
spot instance enabled (market_type = "spot") and spot options declared (non empty spot_options_attributes)

case 2:
spot instance disabled (market_type = null).
As long as the spot instance is disabled (market_type = null), the spot_options_attributes variable will be ignored regardless of whether its declared or not.

I'll cc: @joe-niland here as I need help in reviewing the PR

Hello @nitrocode, @joe-niland
I've updated the code. Could you help review the latest commit? c184687
the changes included the instance market options variable adjustment, custom validation for market type, and several other minor fix
Thank you 🙏🏻

/terratest

/terratest

/terratest


Remove exports needed for emitting TypeScript declarations

Hi,
I noticed the following comment in the source code
// These are only needed for emitting TypeScript declarations

It seems that with a couple of changes they are no more needed
import { Validation, ValidationError } from 'io-ts';
import * as array from 'fp-ts/lib/Array';
import { Option } from 'fp-ts/lib/Option';

const jsToString = (value: any) => (
    value === undefined
        ? 'undefined'
        : JSON.stringify(value)
);

export function formatValidationError(error: ValidationError): Option<string> {
    const path = error.context
        .map(c => c.key)
        // The context entry with an empty key is the original type ("default
        // context"), not an type error.
        .filter(key => key.length > 0)
        .join('.');

    // The actual error is last in context
    const maybeErrorContext = array.last(error.context);

    return maybeErrorContext.map(errorContext => {
        const expectedType = errorContext.type.name;
        return (
            // tslint:disable-next-line max-line-length
            // https://github.com/elm-lang/core/blob/18c9e84e975ed22649888bfad15d1efdb0128ab2/src/Native/Json.js#L199
            `Expecting ${expectedType}`
            + (path === '' ? '' : ` at ${path}`)
            + ` but instead got: ${jsToString(error.value)}.`
        );
    });
}

export function reporter(validation: Validation<any>): Array<string> {
    return validation.fold(
        errors => (
            array.catOptions(
                errors.map(formatValidationError),
            )
        ),
        () => [],
    );
}

Also, only the Array module is imported (instead of the whole fp library)

@gcanti Thanks for that.
What was the fix there out of interest? Was it converting the function expressions to declarations?

Was it converting the function expressions to declarations?

Yep. Namely the reporter function

Interesting, how come that means you no longer need to export those identifiers?

Actually I don't know, I never encountered this error before since I always use function declarations.. maybe is a bug


exp_const_u64

This doesn't necessarily feel like the right solution, but in my builds it does seem to speed up Poseidon benchmarks significantly.
OTOH @unzvfu earlier found that the compiler seemed to be specializing the exp_u64 code for constant arguments as one would hope. So we should probably look into this more. Not sure if it's a compiler difference (I'm using a recent nightly and targeting M1) or due to differences in the call sites.

I think we should move forward with this for now, we can revert later if we can figure out a reliable way to get the compiler to do what we want.


Remove built-in initialize.

Remove built-in initialization so that apps may start plugin at specific point rather than a forced initialize on app open.
Plugin currently forces prompt for location permissions on app open.  Users should call geofence.initialize on their own to define when to prompt for location permissions.

Hi, is this pull request going through? I'd really like this functionality!

Closed by e92e2e3


@BeforeClass is no executed for JUnit's Enclosed runner.

If I have a test class that is annotated with @RunWith(Enclosed.class) and a method annotated with @BeforeClass then the annotated method is not executed.
Expected Behavior
The method annotated with @BeforeClass is executed.
Current Behavior
The method annotated with @BeforeClass is not executed.
Context
Test behave differently in Gradle than in IntelliJ, Maven, ...
There was an issue raised for JUnit: junit-team/junit4#1354
Steps to Reproduce (for bugs)
Run a project with the following test
@RunWith( Enclosed.class )
public class Enclosed1Test {
    private static String someValue;

    @BeforeClass
    public static void setSomeValue() {
        someValue = "test";
    }

    public static class InnerClass {
        @Test
        public void aTest() {
            Assert.assertEquals( "test", someValue );
        }
    }
}

The test will fail if you run it with Gradle.
Your Environment

Build scan URL: https://gradle.com/s/pwwbdasuqkmrw

This may be an issue with the discovery of JUnit tests and be related to #2319.

It might be related to the fact that you are using an inner class. I'd be surprised if @BeforeClass wouldn't work properly per se though I'd have to try it.

@bmuschko You're right it is related to the inner class aka the Enclosed runner.


TigerGraph: Switch default version from 3.7.0 to 3.9.3-2

Switch version from 3.7.0 to 3.9.3-2. (3.7.0 has been removed)
Delete user-define function to_string. (3.9.3 already has this built-in function)
Add some necessary configurations of 3.9.3-2.

Thanks!


[Slider] Touch in SwipeableDrawer

When the Slider is in a SwipeableDrawer the drawer moves on slider-movement on touch devices.
https://codesandbox.io/s/great-tesla-0kjx1?fontsize=14

Similar issue with a scrolling content: https://codesandbox.io/s/keen-cache-c7pzc.

@daniel-rabe What do you think of this diff?
diff --git a/packages/material-ui/src/Slider/Slider.js b/packages/material-ui/src/Slider/Slider.js
index f96acaf3a..aa6fefc3a 100644
--- a/packages/material-ui/src/Slider/Slider.js
+++ b/packages/material-ui/src/Slider/Slider.js
@@ -552,6 +552,10 @@ const Slider = React.forwardRef(function Slider(props, ref) {
   const handleTouchStart = useEventCallback(event => {
     // Workaround as Safari has partial support for touchAction: 'none'.
     event.preventDefault();
+
+    // The slider is going to take care of this interaction. Dibs!
+    event.stopPropagation();
+
     const touch = event.changedTouches[0];
     if (touch != null) {
       // A number that uniquely identifies the current finger in the touch session.

However, reading https://css-tricks.com/dangers-stopping-event-propagation/, I'm wondering if we shouldn't rely on something else cc @eps1lon.

i tested this in our project with mui-core 3.9.3 and lab 3.0.0-alpha30 and it does not solve the problem.
i think preventDefault should already fix the drawer-sliding, but the touchEvent is passive by default and preventDefault has no effect

Only works with v4.

Alternatively:
diff --git a/packages/material-ui/src/Slider/Slider.js b/packages/material-ui/src/Slider/Slider.js
index f96acaf3a..f7db34fcf 100644
--- a/packages/material-ui/src/Slider/Slider.js
+++ b/packages/material-ui/src/Slider/Slider.js
@@ -552,6 +552,10 @@ const Slider = React.forwardRef(function Slider(props, ref) {
   const handleTouchStart = useEventCallback(event => {
     // Workaround as Safari has partial support for touchAction: 'none'.
     event.preventDefault();
+
+    // The slider is going to take care of this interaction. Dibs!
+    event.__MUI_HANDLED__ = true;
+
     const touch = event.changedTouches[0];
     if (touch != null) {
       // A number that uniquely identifies the current finger in the touch session.
diff --git a/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js b/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
index b04e4b021..3991c1184 100644
--- a/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
+++ b/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
@@ -293,7 +293,10 @@ const SwipeableDrawer = React.forwardRef(function SwipeableDrawer(props, ref) {
   const handleBodyTouchStart = React.useCallback(
     event => {
       // We are not supposed to handle this touch move.
-      if (nodeThatClaimedTheSwipe !== null && nodeThatClaimedTheSwipe !== swipeInstance.current) {
+      if (
+        (nodeThatClaimedTheSwipe !== null && nodeThatClaimedTheSwipe !== swipeInstance.current) ||
+        event.__MUI_HANDLED__
+      ) {
         return;
       }

@oliviertassinari  is this resolved? Can i work on this?

@jayesh-kaza Thanks for giving a start at this issue. I want to make is clear that the diff I have showcased isn't meant to be the actual solution to the problem, rather something we could explore. I believe the related issue is part of a broader problem:

#16565
#17408
#16942
#17190

I think that we should consider a solution that closes these 4 issues at the same time. It would ensure we have something that is globally optimum.
I have created a simple reproduction for issues 1, 2, and 3:
import React from 'react';
import SwipeableDrawer from '@material-ui/core/SwipeableDrawer';
import Slider from '@material-ui/core/Slider';
import Dialog from '@material-ui/core/Dialog';

export default function App() {
  const [dialogOpen, setDialogOpen] = React.useState(false);
  const [drawerOpen, setDrawerOpen] = React.useState(false);

  return (

      <button
        onClick={() => {
          setDrawerOpen(true);
        }}
      >
        open drawer
      </button>
      <SwipeableDrawer
        open={drawerOpen}
        onClose={() => {
          setDrawerOpen(false);
        }}
        onOpen={() => {
          setDrawerOpen(true);
        }}
        anchor="right"
        variant="temporary"
      >

          slider issue #16565
          <Slider defaultValue={20} aria-labelledby="continuous-slider" />
          <button
            onClick={event => {
              setDialogOpen(true);
            }}
          >
            Dialog issue #17408 open dialog
          </button>

              scroll container scroll containerscroll container scroll container scroll container
              scroll containerscroll container scroll container scroll container scroll
              containerscroll container scroll container

      </SwipeableDrawer>
      <Dialog
        open={dialogOpen}
        onClose={() => {
          setDialogOpen(false);
        }}
      >

dialog body dialog body dialog body dialog body

      </Dialog>

  );
}

I propose the following solution to problem n°1 (this issue). It's based on https://css-tricks.com/dangers-stopping-event-propagation/ recommandations. I like how it reduces the bundle size and give developers some control with event.muiHandled:
diff --git a/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js b/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
index 862aaf47e..a1d63ee4e 100644
--- a/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
+++ b/packages/material-ui/src/SwipeableDrawer/SwipeableDrawer.js
@@ -13,16 +13,6 @@ import SwipeArea from './SwipeArea';
 // trigger a native scroll.
 const UNCERTAINTY_THRESHOLD = 3; // px

-// We can only have one node at the time claiming ownership for handling the swipe.
-// Otherwise, the UX would be confusing.
-// That's why we use a singleton here.
-let nodeThatClaimedTheSwipe = null;
-
-// Exported for test purposes.
-export function reset() {
-  nodeThatClaimedTheSwipe = null;
-}
-
 function calculateCurrentX(anchor, touches) {
   return anchor === 'right' ? document.body.offsetWidth - touches[0].pageX : touches[0].pageX;
 }
@@ -147,7 +137,6 @@ const SwipeableDrawer = React.forwardRef(function SwipeableDrawer(props, ref) {
       if (!touchDetected.current) {
         return;
       }
-      nodeThatClaimedTheSwipe = null;
       touchDetected.current = false;
       setMaybeSwiping(false);

@@ -302,8 +291,13 @@ const SwipeableDrawer = React.forwardRef(function SwipeableDrawer(props, ref) {

   const handleBodyTouchStart = React.useCallback(
     event => {
-      // We are not supposed to handle this touch move.
-      if (nodeThatClaimedTheSwipe !== null && nodeThatClaimedTheSwipe !== swipeInstance.current) {
+      // Example of use case: ignore the event if there is a Slider.
+      if (event.defaultPrevented) {
+        return;
+      }
+
+      // We can only have one node at the time claiming ownership for handling the swipe.
+      if (event.muiHandled) {
         return;
       }

@@ -326,7 +320,7 @@ const SwipeableDrawer = React.forwardRef(function SwipeableDrawer(props, ref) {
         }
       }

-      nodeThatClaimedTheSwipe = swipeInstance.current;
+      event.muiHandled = true;
       swipeInstance.current.startX = currentX;
       swipeInstance.current.startY = currentY;

@@ -367,16 +361,6 @@ const SwipeableDrawer = React.forwardRef(function SwipeableDrawer(props, ref) {
     return undefined;
   }, [variant, handleBodyTouchStart, handleBodyTouchMove, handleBodyTouchEnd]);

-  React.useEffect(
-    () => () => {
-      // We need to release the lock.
-      if (nodeThatClaimedTheSwipe === swipeInstance.current) {
-        nodeThatClaimedTheSwipe = null;
-      }
-    },
-    [],
-  );
-
   React.useEffect(() => {
     if (!open) {
       setMaybeSwiping(false);

Regarding problem No 2: We should add the move listener to the paper only. That would solve the issue and also I just compared MUI's swipeable drawer with Android's native one:
MUI: swipes while swiping on the backdrop
Android: swipes only when touching the paper, not while swiping on the backdrop, but the swipe can start on the backdrop, though

@leMaik If you don't mind, let's move the discussion for point 2 in #17408.


Note that Event Hub samples require .NET Core 3

The Readme.md for the new Event Hubs SDK should note at least somewhere, that all the samples that are shown there do require .NET Core 3.0.
https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/eventhub/Azure.Messaging.EventHubs

Include as part of #7587.
//cc: @kinelski

Thank you for the feedback, Sebastian.
The samples do require using C# 8, either as part of .NET Core 3 or by enabling the preview language version and including the compatibility references.   You're absolutely right that we do a poor job of documenting that.   We'll get those updated for the next release.

oh of course you're right, I meant C# 8 (which equals to .NET Core 3 in this case) :)

Details for this went in with the Preview 4 README updates [#7587]
Thank you, again, Sebastian for calling this out.


bash-completion package doesn't work on (non-NixOS) Linuxes

Issue description
I installed bash-completion-2.8 via Nix Packages in Arch Linux. I've noticed that, even though that's installed, Git auto-completion (not gitflow-autocompletion) doesn't work. Moreover, I also installed gradle-completion-1.3.1 and it doesn't work either; so it looks like there is an issue with the integration of bash-completion into ~/.nix-profile – at least on non-NixOS linuxes.
I tried that also on Ubuntu 18.04.1 LTS. Refer to the discussion for #42799.
Steps to reproduce
On Linux (not NixOS), install bash-completion and gradle-completion via nix-env --install --prebuilt-package bash-completion gradle-completion.
Go to any Git project, try to auto-complete any command. Additionally, go to any Java/Kotlin project that uses Gradle as a build tool...and it won't auto-complete any Gradle task either.
Technical details
[gorre@uplink kotlin-grpc]$ nix-shell -p nix-info --run "nix-info -m"
these paths will be fetched (59.35 MiB download, 372.91 MiB unpacked):
  /nix/store/18ll3cxv888pmyhhkq68a8cd1d06kn42-bash-interactive-4.4-p23-info
  /nix/store/1hi76hr87bd1y1q1qjk0lv8nmcjip1c8-binutils-2.30
  /nix/store/4z04ym7w3vhk16h11a2fss25mb4ymg0j-bash-interactive-4.4-p23-doc
  /nix/store/517mx0hmmmhcl2f20g3lw96azixc6dl5-patchelf-0.9
  /nix/store/5d2njc16vdwq5ivc8y53cdlr63vmbzpf-gcc-7.3.0
  /nix/store/5yl80a6mvrvs7qjpacv2w8hfkvi5y7f6-findutils-4.6.0
  /nix/store/7s1s2brv9jkwy2m5crw1q9405dmp267g-gnumake-4.2.1
  /nix/store/7x63bxivrk58xwqxh3yzxa257dy1r769-gnugrep-3.1
  /nix/store/81q180k8ajw13fw22vglbvga3l9wblhj-xz-5.2.4
  /nix/store/a1zsyfbci72sa7j1jhqwjxnhzv99gppf-readline-7.0p5
  /nix/store/aa16jcadyam5r1zjy7fs4zi86vgm56lf-linux-headers-4.15
  /nix/store/ai2z7yrsy9h13ns3nhqzcx0010kvvvdg-pcre-8.42
  /nix/store/cbj1vh1b9yk7h724ync6ps7g7aiijiwb-ed-1.14.2
  /nix/store/d2r0ha0m1sk9bsh29snnbprfyhgmwllv-binutils-wrapper-2.30
  /nix/store/dbcn3vixwb892gzg0i8snpdqbnxfqd23-diffutils-3.6
  /nix/store/dxjnkd3rd244ipkc05xdpk6wgjzhlvzl-paxctl-0.9
  /nix/store/dzdm3n08sbb3g2ih2p3758ap68zd100v-stdenv-linux
  /nix/store/fz0s16k0lwb07fzh7j0rwwa0qpmnffqj-gawk-4.2.1
  /nix/store/g9mbwrsn10llm968hlaqvwnlb4frs984-gnused-4.5
  /nix/store/igrs1ns8i2vc1lifapyjxpn6xc53hk1k-gnutar-1.30
  /nix/store/ixsxalncig84f4157g2cykb8gp66dap0-expand-response-params
  /nix/store/m2mwfr63zh28wxy6zzmgns4vhjmyw0p1-nix-info
  /nix/store/mb1wy0rc4x8gj9lvdypfid6xil799wyz-patch-2.7.6
  /nix/store/qicx06y64b0mjwf60wwl3qz8py1ify01-gzip-1.9
  /nix/store/rzfwir2wavpf474jgixzm3jdyxnksf86-xz-5.2.4-bin
  /nix/store/slm6059ll30pawd22wwlj013cnkncifb-bzip2-<IP_ADDRESS>.1-bin
  /nix/store/wfq1z9jm9pdkmn43z6z893h1yylgpbmr-bash-interactive-4.4-p23
  /nix/store/wkfafgwgs1na5f808wybs8l6v8yjrvqz-gcc-wrapper-7.3.0
  /nix/store/y75amg1fc859ppgmvdg2klp0bi38v7x4-glibc-2.27-bin
  /nix/store/yr516apbvjbl5r5xiwzj9z72v77smw4y-bash-interactive-4.4-p23-dev
  /nix/store/z10kkr081zb02kyjw8ybf2s9zll49cvx-glibc-2.27-dev
  /nix/store/zb7zl93fr0k6gcz09lyv46war6xyjn1n-bash-interactive-4.4-p23-man
copying path '/nix/store/4z04ym7w3vhk16h11a2fss25mb4ymg0j-bash-interactive-4.4-p23-doc' from 'https://cache.nixos.org'...
copying path '/nix/store/18ll3cxv888pmyhhkq68a8cd1d06kn42-bash-interactive-4.4-p23-info' from 'https://cache.nixos.org'...
copying path '/nix/store/zb7zl93fr0k6gcz09lyv46war6xyjn1n-bash-interactive-4.4-p23-man' from 'https://cache.nixos.org'...
copying path '/nix/store/1hi76hr87bd1y1q1qjk0lv8nmcjip1c8-binutils-2.30' from 'https://cache.nixos.org'...
copying path '/nix/store/slm6059ll30pawd22wwlj013cnkncifb-bzip2-<IP_ADDRESS>.1-bin' from 'https://cache.nixos.org'...
copying path '/nix/store/dbcn3vixwb892gzg0i8snpdqbnxfqd23-diffutils-3.6' from 'https://cache.nixos.org'...
copying path '/nix/store/cbj1vh1b9yk7h724ync6ps7g7aiijiwb-ed-1.14.2' from 'https://cache.nixos.org'...
copying path '/nix/store/ixsxalncig84f4157g2cykb8gp66dap0-expand-response-params' from 'https://cache.nixos.org'...
copying path '/nix/store/5yl80a6mvrvs7qjpacv2w8hfkvi5y7f6-findutils-4.6.0' from 'https://cache.nixos.org'...
copying path '/nix/store/fz0s16k0lwb07fzh7j0rwwa0qpmnffqj-gawk-4.2.1' from 'https://cache.nixos.org'...
copying path '/nix/store/y75amg1fc859ppgmvdg2klp0bi38v7x4-glibc-2.27-bin' from 'https://cache.nixos.org'...
copying path '/nix/store/7s1s2brv9jkwy2m5crw1q9405dmp267g-gnumake-4.2.1' from 'https://cache.nixos.org'...
copying path '/nix/store/g9mbwrsn10llm968hlaqvwnlb4frs984-gnused-4.5' from 'https://cache.nixos.org'...
copying path '/nix/store/igrs1ns8i2vc1lifapyjxpn6xc53hk1k-gnutar-1.30' from 'https://cache.nixos.org'...
copying path '/nix/store/qicx06y64b0mjwf60wwl3qz8py1ify01-gzip-1.9' from 'https://cache.nixos.org'...
copying path '/nix/store/aa16jcadyam5r1zjy7fs4zi86vgm56lf-linux-headers-4.15' from 'https://cache.nixos.org'...
copying path '/nix/store/mb1wy0rc4x8gj9lvdypfid6xil799wyz-patch-2.7.6' from 'https://cache.nixos.org'...
copying path '/nix/store/z10kkr081zb02kyjw8ybf2s9zll49cvx-glibc-2.27-dev' from 'https://cache.nixos.org'...
copying path '/nix/store/517mx0hmmmhcl2f20g3lw96azixc6dl5-patchelf-0.9' from 'https://cache.nixos.org'...
copying path '/nix/store/d2r0ha0m1sk9bsh29snnbprfyhgmwllv-binutils-wrapper-2.30' from 'https://cache.nixos.org'...
copying path '/nix/store/5d2njc16vdwq5ivc8y53cdlr63vmbzpf-gcc-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/dxjnkd3rd244ipkc05xdpk6wgjzhlvzl-paxctl-0.9' from 'https://cache.nixos.org'...
copying path '/nix/store/ai2z7yrsy9h13ns3nhqzcx0010kvvvdg-pcre-8.42' from 'https://cache.nixos.org'...
copying path '/nix/store/a1zsyfbci72sa7j1jhqwjxnhzv99gppf-readline-7.0p5' from 'https://cache.nixos.org'...
copying path '/nix/store/7x63bxivrk58xwqxh3yzxa257dy1r769-gnugrep-3.1' from 'https://cache.nixos.org'...
copying path '/nix/store/wfq1z9jm9pdkmn43z6z893h1yylgpbmr-bash-interactive-4.4-p23' from 'https://cache.nixos.org'...
copying path '/nix/store/wkfafgwgs1na5f808wybs8l6v8yjrvqz-gcc-wrapper-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/yr516apbvjbl5r5xiwzj9z72v77smw4y-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...
copying path '/nix/store/m2mwfr63zh28wxy6zzmgns4vhjmyw0p1-nix-info' from 'https://cache.nixos.org'...
copying path '/nix/store/81q180k8ajw13fw22vglbvga3l9wblhj-xz-5.2.4' from 'https://cache.nixos.org'...
copying path '/nix/store/rzfwir2wavpf474jgixzm3jdyxnksf86-xz-5.2.4-bin' from 'https://cache.nixos.org'...
copying path '/nix/store/dzdm3n08sbb3g2ih2p3758ap68zd100v-stdenv-linux' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 4.14.56-1-lts, Arch Linux, noversion`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.0.4`
 - channels(gorre): `"nixpkgs-18.09pre147772.d1ae60cbad7"`
 - nixpkgs: `/home/gorre/.nix-defexpr/channels/nixpkgs`

I did try adding ~/.nix-profile/share to XDG_DATA_DIRS before posting, but that doesn't quite work.
[gorre@uplink kotlin-grpc]$ echo $XDG_DATA_DIRS
/home/gorre/.nix-profile/share/:/home/gorre/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/

This is an excerpt of my .bashrc:
# Nix Package Manager
if [ -e $HOME/.nix-profile/etc/profile.d/nix.sh ]; then source $HOME/.nix-profile/etc/profile.d/nix.sh; fi
# Completions
if [ -e $HOME/.nix-profile/etc/profile.d/bash_completion.sh ]; then source $HOME/.nix-profile/etc/profile.d/bash_completion.sh; fi
if [ -e $HOME/.nix-profile/etc/bash_completion.d/git-completion.bash ]; then source $HOME/.nix-profile/etc/bash_completion.d/git-completion.bash; fi
if [ -e $HOME/.nix-profile/share/bash-completion/completions/gradle ]; then source $HOME/.nix-profile/share/bash-completion/completions/gradle; fi
#export XDG_DATA_DIRS="$HOME/.nix-profile/share/:$XDG_DATA_DIRS"

In that way it works as it should be – with export XDG_DATA_DIRS or not.
On the other hand (which is what I was expecting to work as such), if I do this:
# Nix Package Manager
if [ -e $HOME/.nix-profile/etc/profile.d/nix.sh ]; then source $HOME/.nix-profile/etc/profile.d/nix.sh; fi
# Completions
#if [ -e $HOME/.nix-profile/etc/profile.d/bash_completion.sh ]; then source $HOME/.nix-profile/etc/profile.d/bash_completion.sh; fi
export XDG_DATA_DIRS="$HOME/.nix-profile/share/:$XDG_DATA_DIRS"

...nothing works. All the completion scripts inside $HOME/.nix-profile/share/ are not applied – even if I uncomment the line with bash_completion.sh.

Hmm, that's really strange. Does this work (relevant code in bash-completion)?
export BASH_COMPLETION_USER_DIR=$HOME/.nix-profile/share/bash-completion/completions

You're getting completion from eg. /usr/share?
You could check complete -p | grep -- -D which should output something like this complete -F _completion_loader -D. I guess there's a chance there's something else hogging the default completion (not sure why, but worth checking I guess). Then you can check type _completion_loader and type __load_completion to see if you're getting code that looks sane.

There is not output for any of the previous if I don't first source $HOME/.nix-profile/etc/profile.d/bash_completion.sh – and I'm also correctly sourcing the current shell whenever I make any change(s) in $HOME/.bashrc.
I don't have a $HOME/.local/share/bash-completion/../../, but strangely enough (for me) I do have a /usr/share/bash-completion/completions/ – I didn't noticed it before. I'm sure I've never installed (directly) bash-completion-x.y-z using Pacman and I don't have that package currently installed:
[gorre@uplink ~]$ sudo pacman -Q bash-completion
error: package 'bash-completion' was not found

A lot of packages come with bash completion bundled, which in Arch's case will be installed in /usr/share/bash-completion/completions, regardless of bash-completion being installed or not.
No idea what the problem is really, but here's some troubleshooting steps to try with $HOME/.nix-profile/etc/profile.d/bash_completion.sh sourced and xdg_data_dirs set:

Check if you're getting completion for eg. wget. If so bash-completion is at least in somewhat working order

Check if any commands listed in /usr/share/bash-completion/completions gives you proper completion.
Check type _gradle after having attempted completion with gradle once. If you're getting some bash code as output it means bash-completion sets things up properly, but there's something wrong with the gradle completion
Install some other bash completion script (eg. nix-bash-completions) with nix-env and check if that works

If nothing of the above works you can try setting up bash-completion from pacman  (if you haven't already tried that).
If things doesn't work then I would take look at .bashrc and see if you're eg. unsetting some option bash-completion expects to be on. A quick way to troubleshot this is sourcing bash_completion.sh at the bottom of your bashrc.

I installed nix-bash-completions-0.6.6; modified my .bashrc shell script as:
# Nix Package Manager
if [ -e $HOME/.nix-profile/etc/profile.d/nix.sh ]; then source $HOME/.nix-profile/etc/profile.d/nix.sh; fi
if [ -e $HOME/.nix-profile/etc/profile.d/bash_completion.sh ]; then source $HOME/.nix-profile/etc/profile.d/bash_completion.sh; fi
export XDG_DATA_DIRS="$HOME/.nix-profile/share/:$XDG_DATA_DIRS"

...started a completely new shell, and now things work! It's funny because I've tried it previously and I usually keep track of all changes to (try to) revert things later on to a previous (known) state...but right now I don't know what changed. In any case, I would say everything should be fine, except for Gradle:
[gorre@uplink completions]$ pwd
/home/gorre/.nix-profile/share/bash-completion/completions
[gorre@uplink ~]$ echo $XDG_DATA_DIRS
/home/gorre/.nix-profile/share/:/home/gorre/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/
[gorre@uplink completions]$ ll | grep gradle
lrwxrwxrwx 1 gorre 108 Dec 31  1969 gradle -> /nix/store/7ylhrp638k8rfa7ry3k9mnr22rlyv9pa-gradle-completion-1.3.1/share/bash-completion/completions/gradle
[gorre@uplink completions]$ type _gradle
bash: type: _gradle: not found

Something I don't fully understand is: from where bash_completion.sh is reading/sourcing the completions' list? I'm saying that because when I saw that Gradle wasn't working I thought that it was reading those from /usr/share/bash-completion/completions/; so I backup and deleted the content of that sub-directory, but still, everything works. I also commented out export XDG_DATA_DIRS="$HOME/.nix-profile/share/:$XDG_DATA_DIRS"...and still, wget, grep, nix-env, etc., behaves as expected.

Also, looks like for Git, it's necessary to source manually: $HOME/.nix-profile/etc/bash_completion.d/git-completion.bash.

Glad its mostly working :)
bash_completion.sh simply sources this file bash_completion. That will set _completion_loader as the default completion handler.
The _completion_loader will run __load_completion with the current command as the first argument. That will look for files in $BASH_COMPLETION_USER_DIR, in $XDG_DATA_DIRS and the package's own completions/ directory (so things like wget will work no matter what XDG_DATA_DIRS is).
If it can find a file matching the command name (possibly with a .bash suffix, or _ prefix) it will source that file, which should set up proper completion for the command in question.
Changing XDG_DATA_DIRS after using completion on eg. nix-env won't have any effect on nix-env completion as the necessary functions are already loaded, and complete -F _nix nix-env have told bash that nix-env should use _nix as its completion function. You'll need to start a new shell to see any effect here.
/etc/bash_completion.d isn't lazy loaded and meant to be taken care of here, so you might want to set export BASH_COMPLETION_COMPAT_DIR=$HOME/.nix-profile/etc/bash_completion.d.
Hope that clarifies things.

Would you mind renaming or closing the issue, as the problem seems to be with gradle/gradle-completion.

Closing this one, since I already have another one for Gradle O:)
Thanks again for the tips!


Don't exclude min and max dates from datepicker

Let the selected date be the equal to the minimum or maximum date since setting a limits to values shouldn't exclude them.

I signed it!

These are not >= signs that you're changing, they're ES6 fat-arrow functions () => {} the comparison logic for min and max did have an issue like this at one point, but it was fixed a while ago.

My bad. Too quick on judging it, but I have noticed the min and max dates are excluded. I'll see if I can find where and submit another PR. Sorry for the inconvenience.

@whitehooder are you using an old version of the library? There was a bug like this but its been fixed. Here's a plunker showing it working correctly: http://plnkr.co/edit/352BHLsD5emS7Fw8qd9H?p=preview

I was using 2.0.0-beta.6. Checking the changelog I found what you were saying and the commit you were talking about.
I also realized that I changed the wrong lines. If you check the commit again you can see that the lines I was trying to remove the equal signs from are two lines directly below the lines I did change. Anyway I've looked over it again and realized that the _minValidator function should return null when there isn't an error and not the other way around.
After updating to 2.0.0-beta.8 the dates aren't excluded anymore.
Thanks for your help, @mmalerba.


blueprint: minor corrections

In section 7.4.2 (Modified base models) I believe there is a minor error: the final corrected magma equation is a copy-and-paste of the previous equation that fails to satisfy Equation 1659. I fix it with the logic from the lean proof:
x * y = \begin{cases} 0 & \text{if } x=0,\: x,y \text{ do not have the same parity} \\  x+1 & \text{if } x,y \text{ have the same parity} \\ x -1 & \text{otherwise} \end{cases}

I also fix one typo and a small clarification on the equation being referenced.

@zaklogician I think I got it right, but would you please verify the correction above?

BLUF: Your edit is correct. In fact, line 333 should get the same treatment, then this'll be ready to merge. Thanks a lot!

I. Let's think step-by-step. :)
I will use the verified Lean as reference.
  match x with
  | 0 =>
    if y % 2 = 0
    then 1 else 0
  | n + 1 =>
    if x % 2 = y % 2
    then n + 2 else n

This says that if $x=0$ and $y$ have the same parity, the result should be $1$. Otherwise, it should be $0$. So if
$x$ and $y$ do not have the same parity, the result should be $0$ as your edit says, not the other way around as my original version says!
Yeah, your edited version is correct.
II. Line 333 and Line 366 should be the same. Line 333 is meant as signposting; basically I state that I will eventually modify the definition of Line 330 (which does satisfy both 1659 and 4315) to Line 333 (which still satisfies the former but not the latter). The rest is explanation about how one would come up with this particular modification.

Line 333 and Line 366 should be the same. Line 333 is meant as signposting

Ah, I hadn't understood that while reading it. #699 is this last change.


Deploy Checklist: New Expensify 2023-08-31

Release Version: 1.3.61-3
Compare Changes: https://github.com/Expensify/App/compare/production...staging
This release contains changes from the following pull requests:

[x] https://github.com/Expensify/App/pull/24027
[x] https://github.com/Expensify/App/pull/25777
[x] https://github.com/Expensify/App/pull/25833
[x] https://github.com/Expensify/App/pull/25856
[x] https://github.com/Expensify/App/pull/25910
[x] https://github.com/Expensify/App/pull/25939
[x] https://github.com/Expensify/App/pull/25945
[x] https://github.com/Expensify/App/pull/25988
[x] https://github.com/Expensify/App/pull/25989
[x] https://github.com/Expensify/App/pull/25990
[x] https://github.com/Expensify/App/pull/26025
[x] https://github.com/Expensify/App/pull/26065
[x] https://github.com/Expensify/App/pull/26146
[x] https://github.com/Expensify/App/pull/26160
[x] https://github.com/Expensify/App/pull/26162
[x] https://github.com/Expensify/App/pull/26165
[x] https://github.com/Expensify/App/pull/26175
[x] https://github.com/Expensify/App/pull/26179
[x] https://github.com/Expensify/App/pull/26184
[x] https://github.com/Expensify/App/pull/26188
[x] https://github.com/Expensify/App/pull/26303
[x] https://github.com/Expensify/App/pull/26315
[x] https://github.com/Expensify/App/pull/26321
[x] https://github.com/Expensify/App/pull/26329
[x] https://github.com/Expensify/App/pull/26373
[x] https://github.com/Expensify/App/pull/26378
[x] https://github.com/Expensify/App/pull/26493

Deploy Blockers:

[x] https://github.com/Expensify/App/issues/26417
[x] https://github.com/Expensify/App/issues/26478
[x] https://github.com/Expensify/App/issues/26482
[x] https://github.com/Expensify/App/issues/26483
[x] https://github.com/Expensify/App/issues/26484
[x] https://github.com/Expensify/App/issues/26510

Deployer verifications:

[ ] I checked the App Timing Dashboard and verified this release does not cause a noticeable performance regression.
[ ] I checked Firebase Crashlytics and verified that this release does not introduce any new crashes. More detailed instructions on this verification can be found here.
[ ] I checked GitHub Status and verified there is no reported incident with Actions.

cc @Expensify/applauseleads

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

I checked off #26484 as it is for a new feature and is only occurring on a single platform.

Checking https://github.com/Expensify/App/pull/25988 off as it works

@luacmartins Regression is almost completed
PR https://github.com/Expensify/App/pull/25990 failing multiple issues
https://github.com/Expensify/App/issues/26478
https://github.com/Expensify/App/issues/26482
https://github.com/Expensify/App/issues/26483
https://github.com/Expensify/App/issues/26484
https://github.com/Expensify/App/issues/26485
PR https://github.com/Expensify/App/pull/25989 - checking CP

PR https://github.com/Expensify/App/pull/25990 failing multiple issues
https://github.com/Expensify/App/issues/26478
https://github.com/Expensify/App/issues/26482
https://github.com/Expensify/App/issues/26483
https://github.com/Expensify/App/issues/26484
https://github.com/Expensify/App/issues/26485

We reverted that PR, so it should no longer be an issue

Checking off https://github.com/Expensify/App/pull/25990. It was reverted.

@luacmartins Regression is completed

Checklist is clear. Kicking off the deploy.

:shipit:


Merge2.10withmaster

Synced master with 2.10
Tested uploads on betaDebug on OnePlus 3T

Codecov Report

Merging #2938 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff           @@
##           master   #2938   +/-   ##
======================================
  Coverage    3.69%   3.69%
======================================
  Files         246     246
  Lines       12219   12219
  Branches     1083    1083
======================================
  Hits          451     451
  Misses      11734   11734
  Partials       34      34

Impacted Files
Coverage Δ

...va/fr/free/nrw/commons/explore/SearchActivity.java
0% <ø> (ø)
:arrow_up:

...ava/fr/free/nrw/commons/utils/PermissionUtils.java
0% <ø> (ø)
:arrow_up:

...fr/free/nrw/commons/mwapi/OkHttpJsonApiClient.java
0.86% <ø> (ø)
:arrow_up:

...fr/free/nrw/commons/media/MediaDetailFragment.java
0% <ø> (ø)
:arrow_up:

...rw/commons/explore/images/SearchImageFragment.java
0% <ø> (ø)
:arrow_up:

...va/fr/free/nrw/commons/upload/UploadPresenter.java
12.16% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Add missing NBA table_ids in Player

Hi @roclark ,
Thanks for this amazing repo!
I noticed that some tables on NBA player pages were not being loaded. I've added in the missing tables, except for two which result in errors and will need a bit more work - these are indicated in the code.
From a quick glance, the following stats were previously not loaded or loaded as 0s and are now fixed:
lost_ball_turnovers, offensive_fouls, points_generated_by_assists, passing_turnovers, shooting_fouls, net_plus_minus, and_ones, on_court_plus_minus, shooting_fouls_drawn, center_percentage, point_guard_percentage, power_forward_percentage, shooting_guard_percentage, small_forward_percentage.
Some of the tables I've added won't yet have the data loaded since the appropriate fields aren't yet listed (e.g. playoff information for #425), but that seems to merit a separate Pull Request.
Wasn't sure if there was anything to add to the documentation/test suite based on these changes.
Look forward to hearing your thoughts,
Ethan Baron

It seems that the Harden test case HTML is outdated and uses a different id for the play-by-play table to the current page. I've added the old id, hoping that the relevant test cases pass this time.


Use upack2

Fixes #2 and #14

Yes, upack is MIT licensed. The real solution is to use their .net library instead though, but that will come another day :)

But well spotted - things I need to get used to checking for when I'm doing public stuff. Life behind the corporate firewall is much simpler! ;)

@skovsende okay, just wanted to check.  In order to be 100% compliant, it will likely be necessary to include a copy of the license for the exe in the NuGet package, or at least mention it "somewhere" that it is being used under that license?

You are absolutely right - #17 created to fix that


filters persist between pages, even when resetfilters is dispatched(mabe a feature?)

turned to a feature


DEALLOCATE prepared statements?

I'm using PrepareNamed() to prepare statements. I was experiencing memory increase on my postgresql instance while my application was running and I assume it's because the prepared statements are never deallocated.
The relevant section from the postgresql documentation:

Prepared statements only last for the duration of the current database session. When the session ends, the prepared statement is forgotten, so it must be recreated before being used again. This also means that a single prepared statement cannot be used by multiple simultaneous database clients; however, each client can create their own prepared statement to use. The prepared statement can be manually cleaned up using the DEALLOCATE command.

As my postgresql connection is kept alive while my daemon is running, I suppose the issue could be solved by using DEALLOCATE. I could call this manually, but a plan_name is required - is there a way to get the used plan_name from the Stmt struct? Or is there another/ better way to solve this issue?

This might be done using Stmt.Close()


Protocolize Controller

I felt like Controller would be best served as a Protocol with default implementations. This would remove the restriction of subclassing Controller directly.
Unfortunately, I couldn't get the Xcode Project or the unit tests to run, but this does build.
This would be a breaking change for existing implementations of Controller in that they would have to remove their override keyword, but I feel like it's not very substantial.

This is a lot better.

Upon implementing, it looks like you are required to add @objc functionality if you want to make the protocol optional. Without making it optional, the user is required to implement all of the functions in the protocol. The extension added made it unclear what happens if you don't explicitly add a method in the protocol.
When Swift makes optional protocols possible without @objc this can be re-added. And when registering a controller as a resource() it would be able to check which optional methods were actually implemented.

@tannernelson While you do need @objc to provide optional methods, I believe this is still a better approach. With the default implementations you get the same behavior as you would with a class and not overriding the methods.

With the protocol extension, if you don't implement your own methods the default methods will be ran. If you do implement them in your class, the default methods are not called, and are never reachable from your class as the requirements are defined in the protocol itself.

@tannernelson Also, as all of the required methods have default implementations, you can conform to Controller and obtain all the functionality that was in the class for free.

I think it's more clear when you see override that there are default implementations in the background. If there were no override keyword, I would assume no action for unimplemented methods. Which is how the framework should behave. If you don't implement get(), nothing should happen if you call the get resource. But until optional protocols are feasible, it should be clear the default controller has default implementations that should be considered and overridden.

Perhaps the clearest option would be to make Controller a protocol and require all methods are implemented. Because without optional protocol methods, something will need to be returned for those routes. And I'd rather have the user choose what is returned for all routes than get surprised by the default behavior (empty string) later.

@tannernelson I don't feel as though default implementations are particularly surprising for users. Since Swift 2, they've been heavily pushed on to us through the standard library and most Swift conferences seem to bring them up and talk about them. The biggest thing you lose with default implementations is you don't get the error that the method must be implemented when conforming, but under the Class based approach you wouldn't receive that error (just the responses that the class implements), and if the protocol had all optional methods you also wouldn't get that error either.
I do agree that not returning anything is probably the best option here, though. Default implementations could return a Not Found response so the user could only implement what they want instead of forcing them to do that themselves.

I like the idea of the default implementation throwing a NotFound error. I will look into taht.

For now i've returned it to a protocol forcing controllers to implement all methods.

@tannernelson Thanks! And apologies if that all came off strong. I'm very passionate about protocols haha xD

Being passionate about good code is nothing to apologize for.


Add option to launch temp intellij as custom command through env property

Why
Depending on how your intellij was installed it has not the same command set to launch, so this PR allows to tell kscript what command needs to be considered
What
Allow the possibility to customize kscript to set your intellij launch command

Thank you very much for your contribution to kscript!


ocamlPackages.core_bench: init at 113.33.03

Motivation for this change
Adding core_bench library (used in Real World OCaml)
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[x] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Thanks!


Marketplace Decay

Thinking on the marketplace item production. Couple possible improvements :

[ ] Can we use a decay function to the marketplace? Possibly even reset the entire marketplace on market refresh (bar the current items with bids)

[x]  Can we add in a minimum bid for rarer items? Tiered items cost more to bid on. Possibly floor of 3 gold and goes up by one per tier.

I think the tiered approach is good @loothero wdyt?

Having the higher tiers items have a higher minimum bid is an excellent solution as it solves the "market creeper" problem in a very simple way.
Lets make the increase more significant though since the difference between the tiers is significant.
T5: 3 Gold
T4: 6 Gold
T3: 9 Gold
T2: 12 Gold
T1: 15 Gold
This ensures that the market stalkers still have to pay a hefty premium for all T1 gear. As part of this, we'll bump Charisma discount from 1 to 3 and have it apply to potions to (https://github.com/BibliothecaDAO/loot-survivor/issues/91)
This is going to make Charisma incredibly tempting in the early game but this will come at the cost of making your adventurer highly vulnerable to obstacles and beasts.

@Calcutatator we have tiered the minimum bid for the items based on the item tier. The commit for this is here https://github.com/BibliothecaDAO/realms-contracts/commits?author=ponderingdemocritus
I'm not sure I fully understand the decay function. So we can harvest our issues for release docs, I'm going to make this ticket specifically for the tiered. Can you repackage that suggestion in a separate issue?


Response not playing back

I seem to have gotten it to a point where I can speak a question and there's a response coming back from amazon but the circle color remains green and I don't hear anything.
Here's the header of the response back from Amazon:
{'x-amzn-requestid': '7ec24100-c530-11e5-8418-bb38a9b1baf4', 'content-encoding': 'gzip', 'transfer-encoding': 'chunked', 'vary': 'Accept-Encoding,User-Agent', 'server': 'Server', 'connection': 'keep-alive', 'date': 'Wed, 27 Jan 2016 19:59:40 GMT', 'content-type': 'multipart/related; boundary=e10a23ee-cc0f-47d1-b41f-852cda67da38; start=metadata.1453924780183; type="application/json"'}

Looks like this was a localized problem unrelated to he code.


Replacing links used in multiple pages causes internal server error

Describe the Bug

If we want to edit links that are used in multiple pages, we might encounter a constraint violation of our database
I am not really sure if this is related to the archived pages or if this is also connected to the race conditions of #1518 .
Additional Information

Traceback
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/integreat_cms/cms/models/abstract_content_translation.py", line 487, in save
  super().save(*args, **kwargs)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/base.py", line 739, in save
  self.save_base(using=using, force_insert=force_insert,
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/base.py", line 776, in save_base
  updated = self._save_table(
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/base.py", line 881, in _save_table
  results = self._do_insert(cls._base_manager, using, fields, returning_fields, raw)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/base.py", line 919, in _do_insert
  return manager._insert(
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/manager.py", line 85, in manager_method
  return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/query.py", line 1270, in _insert
  return query.get_compiler(using=using).execute_sql(returning_fields)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/models/sql/compiler.py", line 1416, in execute_sql
  cursor.execute(sql, params)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/cacheops/transaction.py", line 98, in execute
  result = self._no_monkey.execute(self, sql, params)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/backends/utils.py", line 66, in execute
  return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
  return executor(sql, params, many, context)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
  return self.cursor.execute(sql, params)
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/utils.py", line 90, in __exit__
  raise dj_exc_value.with_traceback(traceback) from exc_value
File "/opt/integreat-cms/.venv/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
  return self.cursor.execute(sql, params)
django.db.utils.IntegrityError: duplicate key value violates unique constraint "pagetranslation_unique_version"
DETAIL:  Key (page_id, language_id, version)=(12473, 3, 17) already exists.

The error is caused by these lines:
https://github.com/digitalfabrik/integreat-cms/blob/2d1e36c691612fb73175929c3e9b280139b7ee3d/integreat_cms/cms/views/linkcheck/linkcheck_list_view.py#L165-L177
But only in the condition that the database is already broken - if links exist to old translation versions. So this is somehow a follow-up error of some other known (#1513, #1604) or unknown bug and not a problem on itself...


support postgres function returns table type

 RETURNS TABLE ( column_name column_type [, ...] )

in addition to the currently supported
RETURNS rettype

format
https://www.postgresql.org/docs/9.1/sql-createfunction.html

for this, we'll need to update the TypeDefinitionOfResourceFunction domain object, so that the output property is either a DataType[] or a TypeDefinitionOfResourceTable (Where name of that table can be ${fn_name}.output
we'll have to consider how this affects type definition output, too

blocks being able to return all autogenerated values at one time


Production ready?

Hi. I am wondering wether the current version is production ready and how it really compares to the Ruby version of sidekiq feature-wise. I've enjoyed working with the latter in the post, so would love to see a peer node version as well. Would you say it's ready for mission critical apps or does it need some polishing? There is not much activity with this project and this is a concern. Thank you.

Hey @demisx, this is definitely production-ready, we're using it in large scale apps.
This node module is not intended to be a replacement for sidekiq, rather a way to add jobs from node to be executed in ruby apps.

Bummer, I thought this was the node version of Sidekiq. Thank you for clarifying. I'll continue searching for the node one.


[DO NOT MERGE] Adjust rules about marking content as political

Don't merge yet, as we're looking in to how these changes will be communicated.

There was uncertainty about making this change, so I'll close this.


Optimizing grpc_error Part 3: const char* -> grpc_slice

Based off error opt part1 (#9756), part2 (#9778), and also #9745.
This is the start of the PR that plumbs grpc_slice through all of the code that uses grpc_errors. For now I only changes the two inlined strings, file and desc, to be slices. But eventually we will want all to be slices. Might wait to add that until after I implement the error arena optimization.
Had to add const qualifier to certain tests to get everything to compile. Will make sure that is clean one the preceding PRs land.
Linux benchmark for ErrorCreate so far:
Originally: 338 ns
Part1: 327 ns
Part2: 127 ns
Part3: 95 ns (under 100!)
MacOs:
Originally: 1309 ns
Part1: 1204 ns
Part2: 319 ns
Part3: 160 ns

Closing this. I will redo this optimization on top of #9963, which has already switched to error's holding slices internally


Child fragments don't update values during save based on server response

Made a simple app that shows the issue.
https://github.com/HelloWallet/fragment-update-failure
Basically, when the server provides new values for attributes in child fragments, they don't update with the new value. However, if you do a rollback, the new values will be applied.
This is not how Ember Data works on the top-level model. When attributes are updated by the server as a result of the save operation, they should be immediately applied to the client-side model.

Looks like this is happening when a record is created. Thanks for reporting & making test repo :+1:

Fix released in v0.4.2


Docker Hygieia API Connectivity Issue

I'm trying to use docker compose file but API is unable to connect with MongoDB due to the authentication issue. As anyone encountered the same

problem before.

https://github.com/capitalone/Hygieia/issues/999

@NTDBANNU : are you still seeing this issue?

@NTDBANNU I fixed this issue connecting to the MongoDB container and creating the user manually.

what mongo version are you using. Did you create a DB and switched to that DB on mongo instance to which you are connecting. also, share your properties file.

@NTDBANNU :   are you still seeing this issue? what mongo version are you using? Did you create a DB and switched to that DB on mongo instance to which you are connecting? also, share your properties file.

please reopen if this is still an issue


Two way sync not working as expected.

I'm having an issue syncing data.
Can someone tell me if I'm doing it wrong.
I posted this in stackoverflow and got no responses.
whats happening is in window one.
If I update my teams array then do a bucket.update('team-1',teams);
in console 2 i see the new updated teams object and its put into Simperium properly.
However in window 2
when I do the exact same thing after receiving the new teams object
window 1 doesn't get the update nor does simperium.
code is bellow.
var bucket = simperium.bucket('teams');

            var teams = {"key":"data","other":[1,2,3,4,8]};

            bucket.on('notify', function(id, data) {
                console.log("object "+id+" was updated!");
                console.log("new data is:");
                teams = data;
                console.log(data);
            });
            bucket.on('local', function(id) {
                console.log("request for local state for object "+id+" received");
                console.log(teams);
                return teams;
            });
            bucket.on('error',function(e){
               console.log('error',e);

            });

            bucket.on('notify_init', function(id, data) {
                console.log("got existing data for id: "+id);
                console.log("data =");
                console.log(data);
                bucket.update('team-1',teams);
            });
            //bucket.update('team1',JSON.stringify(teams));
            bucket.on('ready', function() {
                console.log("Finished sending notifications for existing objects!");
                bucket.update('team-1',teams);
            });
            bucket.start();

Thank you.
I really want to use this over firebase.

I'm having the same issue, probably going to switch to firebase.


Desktop - Chat - There is a huge gap after the last message in the chat.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Launch the app
Log in with any account
Write a message in any chat. Notice a larger than normal space below the last message and above the chat composer.

Expected Result:
There shouldn't be a huge gap after the last message.
Actual Result:
There is a huge gap after the last message in the chat.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: 1.3.24-3
Reproducible in staging?: n/a
Reproducible in production?: n/a
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

Expensify/Expensify Issue URL:
Issue reported by: Shawn Borton
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686034573429909
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
Desktop - Chat - There is a huge gap after the last message in the chat. #20475
What is the root cause of that problem?
The problem is that we are applying styles.chatItem to ReportActionItemGrouped which gives top and bottom padding of 8px
https://github.com/Expensify/App/blob/38ba7c8eb29a43552980b09dcdde46ccded35c7e/src/styles/styles.js#L1471-L1478

What changes do you think we should make in order to solve the problem?
We can instead use a new style calling it chatItemGrouped and removing the top padding on that to reduce the spacing on the top while leaving the padding at the bottom to keep the appearance consistent
chatItemGrouped: {
        display: 'flex',
        flexDirection: 'row',
        paddingTop: 0,
        paddingBottom: 8,
        paddingLeft: 20,
        paddingRight: 20,
    }

Result

@shawnborton Are you zoomed in by chance in your screenshot? I'm either not noticing the gap, or I'm not able to reproduce the same thing. Just tested on v1.3.26-1.

Actually, hmm maybe it is there. It looks more pronounced now that I've posted the screenshot, but it's also less spacing compared to what I think I see between messages further up in the scroll view.

Not zoomed in, but I just updated the app on Desktop and now I'm not seeing this anymore. So I guess we can close.


Support Google Storage

I know there is support for AWS S3. Are there any plans for Google Storage?

We don't have any plans to add a google storage caching plugin to this repo, but you can require other npm modules to use with prerender so feel free to make your own! Should be very similar to the S3 plugin.


[do-not-merge][tests-only] bump ocis commit-id

Bump after PR https://github.com/owncloud/ocis/pull/7019
Part of https://github.com/owncloud/QA/issues/824

Will be continued in https://github.com/cs3org/reva/pull/4130


[9.x] Cover session store test on setExists method

the session store test does not cover test for public method setExists therefore I added
thanks

We don't typically test simply setters.


Add support for record comment api.

Dear @wolftatsu ,
Your pull request is considering for merging.
We will implement more for full function:
+ mention, creator when adding comment
+ delete comment
Could you please waiting for this function?
Thank you!

Hi trung-doan!
Thank you for your response.
I'm looking  forward to your awesome features.
Do I need close this Pull request?
Thanks.

Hi @wolftatsu ,
Yes, please help me close this pull request.
The function are implementing. We will tell you when it's done.
We always look forward to your comments and requests.
Thank you very much!