EVP_PKEY_get0_EC_KEY/EVP_PKEY_get1_EC_KEY replacement

3.0 marks EVP_PKEY_get0_EC_KEY() and EVP_PKEY_get1_EC_KEY() as deprecated, but it's not clear how I should replace it. My current code uses the EC_KEY to be able to call EC_KEY_get0_group() and EC_KEY_get0_public_key(). These functions and the APIs related to EC_GROUP and EC_POINT don't seem to be deprecated, but I don't see a non-deprecated way to get to them.

Quick answer for the replacements:
EVP_PKEY_get_utf8_string_param(ret->pkey,
                                OSSL_PKEY_PARAM_GROUP_NAME,
                                name_out,sizeof(name_out),&len)

EVP_PKEY_get_octet_string_param(ret->pkey,
                        OSSL_PKEY_PARAM_PUB_KEY,pubkey,sizeof(pubkey),
                                                               &pubkey_len)

I want to use a function like EC_POINT_is_on_curve().

For my use case I can replace it with EVP_PKEY_public_check(). But I'm not sure that's the case for everybody.

I believe the non-deprecated way is to use the functions mentioned above by Tim to get the group name and the encoded point and then use EC_GROUP_new_by_curve_name() and EC_POINT_oct2point() to convert the data obtained to a group and a point. And of course if you can use EVP_PKEY_public_check() instead for what you need to check, that is the preferred way.


Feature request: supplying multiple files through a single append

Relates to: #319
I have a need to append multiple files to a single 'modules' property based on how I currently use multer.
In app:
app.post('/modules/upload', upload.array('modules'), function (req, res, next) {
  // req.files is array of `module` files
})

In separate utility:
const files = [
  fs.readFileSync(path.resolve(__dirname, 'myFirst.module')),
  fs.readFileSync(path.resolve(__dirname, 'mySecond.module')),
];

const form = new FormData();
form.append('version', '1.0.0');
// This works
// form.append('modules', new Buffer(files[0]), { contentType: 'application/octet-stream', filename: 'myFirst.module' });
// This doesn't
form.append('modules', Buffer.concat(files));

If I'm just not using this properly please let me know. Thanks :)

The actual spec didn't really help me that much. Took me reading the Mozilla Example for Form Data for it to click that I could actually append to the same variable multiple times with no fancy hacks needed.
formData.append('userpic[]', myFileInput1.files[0], 'chris1.jpg');
formData.append('userpic[]', myFileInput2.files[0], 'chris2.jpg');

This does not work for me...
Adding to form like this:
form.append(`blobBuffer[]`, blobsAsBuffers[i], { filename: expressReq.body.files[i].fileName });
Produces this on the receiving end:
{
...
  file: {
    blob: Blob { size: 4168, type: '' },
    fileName: 'file2.txt'
  },
...
}

Ie. I try to append 2 files and I only receive the one I appended last


python310Packages.aws-adfs: 2.0.1 -> 2.0.2

Description of changes
https://github.com/venth/aws-adfs/releases/tag/2.0.2

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 170694 run on x86_64-linux 1

2 packages built:

aws-adfs (python39Packages.aws-adfs)
python310Packages.aws-adfs


[utils] Fix non-blocking only filesystems

This workaround is needed for some filesystems like virtiofs where any file locking or unlocking operation must be non-blocking
IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

This PR adds a workaround for the file unlocking operation on some filesystems like virtiofs by adding the UNLOCK_NB flag on error.
Fixes #6823
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[x] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

this fix works for me on using virtiofs with a vm under unraid. I do have a different problem 2023-04-29 18:43:34,875 - sonarr_youtubedl - ERROR -       Failed - TBA - Replacement index 1 out of range for positional args tuple but I think it is unrelated.


Remove deprecated option

there's a second occurrence of this option in the node module options that needs to be removed as well:
blockAds: Boolean, block ads defined by adblockrules.org

(yes I know this is an old PR, sorry for waking the dead)


fix: check query_idx order of sampling method

In order to check the sampling order https://github.com/tech-sketch/SeqAL/pull/4, we update the test to make sure the order is right

Codecov Report

Merging #5 (a838e92) into main (83f8782) will decrease coverage by 6.74%.
The diff coverage is 95.76%.

@@            Coverage Diff             @@
##             main       #5      +/-   ##
==========================================
- Coverage   87.62%   80.88%   -6.75%
==========================================
  Files           9        9
  Lines         396      408      +12
==========================================
- Hits          347      330      -17
- Misses         49       78      +29

Impacted Files
Coverage Δ

seqal/active_learner.py
60.63% <83.33%> (+6.09%)
:arrow_up:

seqal/query_strategies.py
72.72% <84.61%> (-24.03%)
:arrow_down:

tests/conftest.py
87.73% <100.00%> (-12.27%)
:arrow_down:

tests/test_active_learner.py
100.00% <100.00%> (ø)

tests/test_query_strategies.py
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 83f8782...a838e92. Read the comment docs.


cannot debug endtoendtests because of compiler failure

Version
1.15.0
What happened?
When  trying to debug an endtoend test (e.g. TestReplay) the compiler fails with internal compiler error: NewBulk too big: nbit=22255 count=1028433 nword=696 size=715789368 (of course the numbers vary).
You can also reproduce this by going to directory internal/engine/postgresql and running go test -c -o /tmp/xx.__debug_bin -gcflags all=-N  .
This is a problem in the go compiler (see https://github.com/golang/go/issues/48375) which seems to happen when large slices or maps are generated.
In our case that is https://github.com/kyleconroy/sqlc/blob/main/internal/engine/postgresql/pg_catalog.go which has gotten too big for the compiler since https://github.com/kyleconroy/sqlc/commit/8fa5272ea4a7648f27401f70fc816348519ab0fe
The suggested workaround is to create the slice outside of the function.
Relevant log output
No response
Database schema
No response
SQL queries
No response
Configuration
No response
Playground URL
No response
What operating system are you using?
No response
What database engines are you using?
No response
What type of code are you generating?
No response

The attached PR will fix the compile problem. Unfortunately the code that I generate on my machine is different from the one in the repo, probably because I have a different postgresql-instance running.
So I still need help re-generating the code (i.e. running sqlc-pg-gen agaings a 'correct' postgresql instance).


Adding a link in the preview image's alt closes the  of the page

Checklist

[X] I'm willing to follow the Contributing Guidelines.

Describe the bug
I have tried to add a link in the alt element of my latest post's preview image. As I took the image from Unsplash I wanted to add a link to the author's profile.
Adding the link as a a HTML element works great in the image caption but the value is also used in the <meta property="og:image:alt"> in the head. As the value is not escaped there, it "closes" the head of the page which causes these side-effects:

The end of the alt is writting at the very beginning of the body
The favicon is not found

You can see how it looks here:

And how the head is cut in the browser's dev tools:

Steps To Reproduce
I have reproduce the issue on a fresh environment, starting from the latest commit of the Chirpy starter repo, following these steps:

Adding an image in the /assets/img folder
Create a test.md file in the _drafts folder with the following content:

---
title: Post title
img_path: /assets/img
image:
  path: banner.jpg
  # alt: Let's put a "/>
  alt: Let's put a link here
---

Running bundle exec jekyll s -D -l and navigate to the draft

Expected Behavior
If I remove the HTML code from the alt property, the head of the page is not cut and the side-effects mentionned in the description doesn't appear. This behavior and the link in the image caption would be perfect :)
Environment

Ruby: ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu]
Jekyll: jekyll 4.3.2
Chirpy: jekyll-theme-chirpy (6.2.2)

Anything else?
I have been fiddling a little with this, and it seems that adding Hello "/> is also causing the issue. But I wasn't able to find in the code where the <meta property="og:image:alt" element is generated...
Please let me know if adding HTML there is a terrible idea, I'm open to any suggestion.

... if another property could be added for the caption of the preview image ...

This shouldn't be a good idea, the design goal is to maximize the use of common parameters with jekyll-seo-tag.
Also, image annotations should just be plain strings, not fancy rich text.

Ok that make sense, I wasn't aware of the design goal and how it relates to the jekyll-seo-tag plugin.
Thanks again for your replies and of course your awesome work on this theme.
I will stick to text-only content for my image captions and close this issue.

I've ran into the same bug. I'm also trying to credit someone else's photo. Unfortunate result.


Flash Helper Error

Hey, I have added this to my AppController.php
public $helpers = [
        'Html' => [
            'className' => 'Bootstrap.BootstrapHtml'
        ],
        'Form' => [
            'className' => 'Bootstrap.BootstrapForm',
            'useCustomFileInput' => true
        ],
        'Paginator' => [
            'className' => 'Bootstrap.BootstrapPaginator'
        ],
        'Modal' => [
            'className' => 'Bootstrap.BootstrapModal'
        ],
        'Flash' => [
            'className' => 'Bootstrap.BootstrapFlash'
        ]
    ];

I am getting an error whenever the flash is supposed to be displayed.
Element/.ctp

Cake\View\Exception\MissingElementException

Does the helper automatically apply to
$this->Flash->error(__('The tag could not be saved. Please, try again.'));

Or did I miss a step?
Thanks,

There was a bug with the new namespace name, could try updating (using the dev-master branch) and tell me if it works now?

Thanks for getting back to me! I did the update but I am still getting the same error.
Element/.ctp

Cake\View\Exception\MissingElementException

⟩ Cake\View\View->element ROOT/vendor/holt59/cakephp3-bootstrap-helpers/src/View/Helper/BootstrapFlashHelper.php, line 92

line 92: return $this->_View->element($flash['element'], $flash);

Am I missing anymore code additions, or do I simply need to add the Flash helper to the AppController.php
Thanks.

Do you still have the problem since commit 8083a65e3971350db5b793c5ff343e51b1598857?

Awesome! It is working now!! Thank you!


388: Group L3 article picture and caption together and centre.

Fix #388
Test URLs:

Before: https://main--hlx-test--urfuwo.hlx.live/draft/rjwtrmn/the-article-copy
After: https://388-centre-small-images-l3--hlx-test--urfuwo.hlx.live/draft/rjwtrmn/the-article-copy

I noticed that images without captions were not being centered correctly, have made appropriate changes and added an example to the demo page.


[Q] --test-shift-plot or graph?

I've read some sushi codes in order to understand how it works. One thing I wonder is the "--test-shift-plot" args in the parser. How I can generate the graph?

You have to have matplotlib package installed and just specify the plot path like --test-shot-plot plot.png. Do note that all options prefixed with test are only for development and can be removed at any time without any mention.


Error 21

Hello,
I got this error: ERROR: [Errno 21] Is a directory: 'install'
And if I move install.sh at the root I got: ERROR: There are no scenarios; must have at least one.
Thanks

Hi @picarda, can you specify which command you were trying to run?

Hi
It’s when I do: yarn install
thanks

Use npm for install, build and start LiveTerm.
npm install
npm run dev or npm run build and npm run start

@picarda [Errno 21] is a python error, are you trying to run install.sh in a python environment? If so, could you detail the steps or the code you used to run yarn install?

Hello,
For reproduce this error, i have clone git repo with this command git clone https://github.com/Cveinnt/LiveTerm.git && cd LiveTerm and after try to install with yarn install && yarn dev. But this command out 00h00m00s 0/0: : ERROR: [Errno 2] No such file or directory: 'install' it's same with yarn dev.
I do not understand why run a shell file in python but i try and not working for me.
I have Node Js 16, python 3, ubuntu 20.04 and last yarn package install.
Install and run with npm work great for me.
Thanks for your great work.

I'm not used to yarn. You think npm can cause problems ?

I'm not familiar enough with the intricacies of either to say whether it would (though I doubt it would), I'm just commenting on why you might be facing that particular issue with yarn.

Great discussion - thanks everyone for contributing! Closing this issue for now.


Confirm should not automatically hide a Generic Dialog

After pressing the OK button in a Generic Dialog it would be useful if the dialog box was not automatically hidden, This allows the on_confirm callback to validate the fields in the dialog and hide it only if all are correct. If incorrect the on_confirm callback can instead write an error field which is automatically displayed.
If you are happy with the idea:
In remi/gui.py delete the line self.hide() in confirm_dialog.
In the examples. In  widgets_overview_app.py add self.dialog.hide() at line 246

It should be better to inherit the GenericDialog and overloading the confirm_dialog member in order to implement a validation process. Maybe will write an example for this.


Add rails as dependency

Add rails gem as a runtime dependency in the gemspec.

@abeidahmed I fixed the trailing whitespaces issue. Please let me know if it's correct.

Thanks for the PR. I'll look into it tomorrow. Cheers.


Discuss related work

Here's is some related work that would be helpful to review and discuss. Perhaps some it has valuable insights/techniques that can be used in Project:M36:

https://github.com/stepcut/relatable
https://github.com/Gabriel439/Haskell-Bears-Library

Thanks! I hadn't seen the relatable prototype before; it reminds me of vinyl-records.

One immediate issue that jumps out at me is whether or not relatable support nested relations. I would need to experiment with it to confirm, but I would guess not. Also, I am wondering how far we might otherwise get without Template Haskell.
The new GHC 8 custom error reporting would also come in handy for type errors.

@3noch, was there anything specific about these modules that you wish to discuss.
One issue that is probably intractable is mixing static relvar/Haskell record declarations with dynamic runtime queries.  I do recall seeing a template-haskell-based solution which actually queried the database to validate the types against the actual remote schema at compile-time, but I question the worth of this approach since it seems to offer a false sense of security: in production, the schema could be anything.
What do you think?

@agentm I thinking having the ability to check a schema against a running database is pretty cool, and could add a layer of safety before deployments. However, I think that having a good migration system is still required regardless, and it gets you 98% of the way there if you run your tests against a migration-created database. If you can compare your code schema against the schema generated by your migration sequence, that would get you 99% of the way there.

A type-safe SQL DSL: https://github.com/valderman/selda

I took a look at Selda and it indeed does look promising. One thing that turns me off (and this is not the only framework with the problem) is that the DSL assumes the data types I want back are the unpacked tuples. This precludes support for relation-valued attributes which is essential to the relational algebra (much less so for SQL which doesn't support it at all). Also, the NULL handling appears awkward, but that is to be expected due to the impedance mismatch.
In summary, I would like to see a similar framework for Project:M36 but with these properties:

marshal data types using Tupleable instance via Generics
convenient insert/update/delete methods
clear transaction semantics
some sort of schema validation/versioning at startup to ensure that the convenience functions above can't blow up due to schema changes

But, slightly off-topic, how did you come across this framework? If there is a listing of interesting and upcoming Haskell frameworks, I would like to subscribe.

@agentm Great thoughts!!
Haha, I am the listing. ;) This one happened to hit Haskell reddit today. But I found it a while ago because I follow a lot of people and I religiously look through my GitHub activity feeds.

https://github.com/ocharles/rel8

Here's another SQL-inspired JS database relying on web storage: https://github.com/google/lovefield . It might inspire a similar interface for this project.

https://hackage.haskell.org/package/beam

http://khibino.github.io/haskell-relational-record/

On the git-like storage and branching model: https://github.com/mirage/irmin

Type-safe API: https://www.morphism.tech/announcing-squeal/

Do you think that squeal is an API direction we should pursue?
What turns me off to it is the strong SQL-specific bindings type-wise and data wise. While I can appreciate being able improve code confidence at compile-time, I wonder how the code might handle a schema changing over time or if the expected types don't match. I imagine those must be thrown as exceptions.
In short, the current Atomable and Tupleable interfaces provide most of the same services, but don't offer the same compile-time guarantees. In addition, it looks like there is no static guarantee between the Haskell type and the db type in squeal, but do correct me if I am wrong.
Because of the SQL impedance mismatch, in squeal, the user is forced to define an SQL mapping, which we don't require, so I think we win there as well.
As you work with the new Tupleable interface, please do open any new issues on things that could be easier or offer better compile-time guarantees.

@agentm I'm just keeping a log of everything I see that could be useful down the road. I definitely agree that no amount of type-safety will make SQL ideal to work with. This project has a big advantage already in that regard, even without the powerful type-safety. However, I'm sure we'll want to add more type-safety in the future and we can use these as examples.

Git-like distributed database: https://github.com/mirage/irmin


Can this be used for ASR?

Good question. I believe it is not straightforward yet, and it's an interesting research problem. An obvious thing is that at least we can use a Transformer-XL as the LM in ASR.

Also just wanted to say that if you're looking to modify this architecture for ASR, you can take a look at the transformer-based models in https://github.com/tensorflow/tensor2tensor.


Is pretrained model necessary for the provided performance?

Hi, thanks for your work.
I wonder is the pretrained model necessary for the detection performance, cause I tried to train from scratch and the results seemed terrible.
Besides, I could not open google drive. Could you provide the pretrained models in another way?

Train from scratch shouldn't result terrible, there may be some bugs in my code.

What's your result when train from scratch? The performance of pretrained model should be very easy to achieve.
I have trained 80k step and get 84/74/67 3D AP, there seems no serious bug in my code.

I used the default car.config in the repo. Should I modify files in SparseConvNet as you mentioned in README, even if I did not use the pretrained model?

I use a different version of SparseConvNet and Pytorch and it seems all right.

Can we used pretrained model for poinpillar algoritm?


Renable L2-Enable parameter

Branch / Commit Hash
dev (de5ce521973304b9326ee3ec4a9ee8b28316173e)
Area
Aviary
Current behavior
L2 EN can be set, but has no effect on the synthesis.
Expected behavior
L2 EN should override the other L2 parameters in aviary defines.
Analysis
Systems which use L2 as a write buffer are currently overprovisioned
Verification
Manual inspection of resulting build in VCS
Additional Context
This came up in the context of a zynq-parrot build (no-l2)

Fixed


[SUPPORT] Failed to upsert for commit time

Hi,
I keep getting the following error intermittently and I'm not sure what causes this issue. There may be two different hudi jobs running parallelly and writing to the same bucket. Will that be an issue ? Also Please guide me in resolving the following error.
py4j.protocol.Py4JJavaError: An error occurred while calling o318.save.
: org.apache.hudi.exception.HoodieUpsertException: Failed to upsert for commit time<PHONE_NUMBER>0253
at org.apache.hudi.table.action.commit.WriteHelper.write(WriteHelper.java:62)
at org.apache.hudi.table.action.commit.UpsertCommitActionExecutor.execute(UpsertCommitActionExecutor.java:45)
at org.apache.hudi.table.HoodieCopyOnWriteTable.upsert(HoodieCopyOnWriteTable.java:88)
at org.apache.hudi.client.HoodieWriteClient.upsert(HoodieWriteClient.java:193)
at org.apache.hudi.DataSourceUtils.doWriteOperation(DataSourceUtils.java:260)
at org.apache.hudi.HoodieSparkSqlWriter$.write(HoodieSparkSqlWriter.scala:169)
at org.apache.hudi.DefaultSource.createRelation(DefaultSource.scala:125)
at org.apache.spark.sql.execution.datasources.SaveIntoDataSourceCommand.run(SaveIntoDataSourceCommand.scala:45)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult$lzycompute(commands.scala:70)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:68)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.doExecute(commands.scala:86)
at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$1.apply(SparkPlan.scala:131)
at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$1.apply(SparkPlan.scala:127)
at org.apache.spark.sql.execution.SparkPlan$$anonfun$executeQuery$1.apply(SparkPlan.scala:155)
at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:152)
at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:127)
at org.apache.spark.sql.execution.QueryExecution.toRdd$lzycompute(QueryExecution.scala:80)
at org.apache.spark.sql.execution.QueryExecution.toRdd(QueryExecution.scala:80)
at org.apache.spark.sql.DataFrameWriter$$anonfun$runCommand$1.apply(DataFrameWriter.scala:676)
at org.apache.spark.sql.DataFrameWriter$$anonfun$runCommand$1.apply(DataFrameWriter.scala:676)
at org.apache.spark.sql.execution.SQLExecution$$anonfun$withNewExecutionId$1.apply(SQLExecution.scala:78)
at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:125)
at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:73)
at org.apache.spark.sql.DataFrameWriter.runCommand(DataFrameWriter.scala:676)
at org.apache.spark.sql.DataFrameWriter.saveToV1Source(DataFrameWriter.scala:285)
at org.apache.spark.sql.DataFrameWriter.save(DataFrameWriter.scala:271)
at org.apache.spark.sql.DataFrameWriter.save(DataFrameWriter.scala:229)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
at py4j.Gateway.invoke(Gateway.java:282)
at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
at py4j.commands.CallCommand.execute(CallCommand.java:79)
at py4j.GatewayConnection.run(GatewayConnection.java:238)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException
at org.apache.hudi.common.util.ValidationUtils.checkArgument(ValidationUtils.java:31)
at org.apache.hudi.common.table.timeline.HoodieActiveTimeline.transitionState(HoodieActiveTimeline.java:327)
at org.apache.hudi.common.table.timeline.HoodieActiveTimeline.transitionRequestedToInflight(HoodieActiveTimeline.java:384)
at org.apache.hudi.table.action.commit.BaseCommitActionExecutor.saveWorkloadProfileMetadataToInflight(BaseCommitActionExecutor.java:139)
at org.apache.hudi.table.action.commit.BaseCommitActionExecutor.execute(BaseCommitActionExecutor.java:89)
at org.apache.hudi.table.action.commit.WriteHelper.write(WriteHelper.java:55)
... 38 more
Below are my hudi config:::
SmallFileSize = 104857600
MaxFileSize = 125829120
RecordSize = 35
CompressionRatio = 5
InsertSplitSize = 3500000
IndexBloomNumEntries = 1500000
KeyGenClass = org.apache.hudi.keygen.ComplexKeyGenerator
RecordKeyFields = sourceid,sourceassetid,sourceeventid,value,timestamp
TableType = COPY_ON_WRITE
PartitionPathFields = date,sourceid
HiveStylePartitioning = True
WriteOperation = upsert
CompressionCodec = snappy
CommitsRetained = 1
CombineBeforeInsert = True
PrecombineField = timestamp
InsertDropDuplicates = False
InsertShuffleParallelism = 100
Environment Description
Hudi version : 0.6.0
Spark version : 2.4.3
Hadoop version : 2.8.5-amzn-1
Storage (HDFS/S3/GCS..) : S3
Running on Docker? (yes/no) : No. Running on AWS Glue

@KarthickAN Yes, like we discussed over slack, hudi 0.6.0 doesn't allow concurrent writes. To give you an idea of what's happening, Hudi timeline transitions are from requested to inflight to completed. At point in time, this transition can be performed only once. This exception is basically saying the transition has already happened and someone else is trying to do the same transition - this is mostly possible when 2 different jobs are writing to the same table with the same writeClient instance.
Can you make sure that only 1 single writer it writing to the table ? If you still get the exception, that would be a bug that needs investigation.

@KarthickAN Any updates on this one ?

I made sure there are no other jobs running in parallel and I didn't face this issue. Thank you. We can close this.

Hi, does Hudi 0.8.0 supports concurrency or from which version concurrecy is supported??

I'm getting this issue using hudi 0.8.0 and with no other jobs running in parallel.

Same as @puremachinery.

Should this work with 0.8.0 and jobs in parallel? Here it doesn't

I had the same problem and I was sure that no other jobs running in parallel. The root problem was the partition column containing a value ".".

if want to run jobs in parallel updaing  update same directory then can try Hoodie locking mechanism-
https://hudi.apache.org/docs/concurrency_control/

I also encountered the same problem in hudi 0.6.0, what is the reason?

I am also getting the same error. I am using Glue to read the CSV file and write it into a Hudi table.
py4j.protocol.Py4JJavaError: An error occurred while calling o326.save.
: org.apache.hudi.exception.HoodieUpsertException: Failed to upsert for commit time<PHONE_NUMBER>4110303

Hi Team,
we are trying to do concurrent writes on HUDI
hudi-spark3.3-bundle_2.12:0.13.1
and appliend concurrency control properties on hive properties via
    "spark.sql.extensions"="org.apache.spark.sql.hudi.HoodieSparkSessionExtension"     "spark.sql.autoBroadcastJoinThreshold"="-1"     "spark.serializer"="org.apache.spark.serializer.KryoSerializer"     "spark.sql.catalog.spark_catalog"="org.apache.spark.sql.hudi.catalog.HoodieCatalog"     "hoodie.datasource.write.keygenerator.class"="org.apache.hudi.keygen.NonpartitionedKeyGenerator"     "hoodie.datasource.write.payload.class"="org.apache.hudi.common.model.OverwriteNonDefaultsWithLatestAvroPayload"     "hoodie.cleaner.commits.retained"="2"     "hoodie.insert.shuffle.parallelism"="54"     "hoodie.finalize.write.parallelism"="54"     "hoodie.cleaner.fileversions.retained"="3"     "hoodie.datasource.query.type"="snapshot"     "hoodie.datasource.write.reconcile.schema"="true"     "hoodie.write.lock.hivemetastore.database"="<db name>"     "hoodie.write.lock.hivemetastore.table"="<table name>"     "hoodie.write.lock.client.num_retries"="15"     "hoodie.write.lock.wait_time_ms"="900000"     "hoodie.write.lock.client.wait_time_ms"="900000"     "hoodie.write.concurrency.mode"="optimistic_concurrency_control"     "hoodie.write.lock.provider"="org.apache.hudi.hive.HiveMetastoreBasedLockProvider"
and still getting exception
org.apache.hudi.exception.HoodieUpsertException: Failed to upsert for commit time
gs://2f907c5c3d18a85a3cf1ddc74f138e27e208fe24f33e2829af7509a031733e/data/us_secure_dl_facets_1p_restrict.db/cust_attr_store_hudi/38a71b8e-094b-423d-b8e1-8a4da7649ff4-0_661-119-157966_20240209125256640.parquet
Note :  this  error are intermittently, sonce we are not able to fix it and hence each time we have to drop the table.

I encountered the same issue recently and spent quite some time debugging it. Eventually, I found a solution by adding the following additional options:
{     "hoodie.datasource.write.recordkey.field": "your_record_key_field",     "hoodie.datasource.write.precombine.field": "your_precombine_field" }


Update Composer dependencies (2023-02-15-00-10)

Visual regression test passed!
View the visual regression test report


fix: make URL validation more strict

allow only URLs with valid hostname and forbid TLD without subdomains

Fixes https://github.com/colinhacks/zod/issues/2236

Thanks, I think this is a good idea, and perhaps a good middleground between the current new URL approach and the old URL regex (which was ultimately untenable imo).


AnimatableBody3D issue on Android

Hi, i'm currently working on a coin pusher game and ran into some issues when exporting to Android.
I have a pusher block (AnimatableBody3d) moving in and out and some coins (RigidBody3d) that can land on top or get pushed by the AnimatedBody3d blocks if they land in front.
It all looks fine in the editor and PC executable, coins gets pushed smoothly by the pusher and the ones that land on top moves along with the motion.
However on Android this is what I get (please see gif below) the coins on top seem to have no friction and slide in place and the coins that get pushed in front of it seems to get pushed in small bursts rather than in a continuous motion.
I posted on discord about this and they suggested me to post here.

Alright, I'll go ahead and close this for now. Let me know if you figure it out.


Fix spelling of "dependencies" in documentation

Fixes a mis-spelling in the Images page.

Hi, I signed the CLA

@alexpatow you might need to check that the email address you're using in Git matches the email address that you signed the CLA with
/check-cla


API limit exceeded: Unable to return a row that exceeds the API limits. To retrieve the row, export the table.

Hello,
First of all, it is really an exciting project and paper. Thank you!!
I tried to adapt the landscaping method on my project. But when I was in the "Load Inference Data" step, it showed the "API limit exceeded: Unable to return a row that exceeds the API limits. To retrieve the row, export the table" error. It seems there is only a way to workaround, that is: "export table" (please see: https://stackoverflow.com/questions/37547711/bigquery-api-limit-exceeded-error).
What does it mean? which table should be exported?
In addition, I tried to split L1 expansion patents to several small numbers, which could be dumped into the model for prediction. But it seems to go beyond my ability...Would you please give me some hints or tell me how to put all L1 expansion patents into the model?  Thank you very much.
All the best,
Syuan-Yi

For larger downloads, I have downloaded a table from BigQuery separately and pointed scripts to that. Or, you can take a subset of the table/field you're downloading to fit within the API constraints.


Deployer composer installation failed

Hi,
I'm using Windows 10, Laravel 9.2 and PHP 8.0.2.
I'm trying to install Deployer on a fresh Laravel project, using: composer require --dev deployer/deployer
I'm always getting this error:
 Problem 1
    - deployer/deployer[v4.3.0, ..., 4.x-dev] require monolog/monolog ^1.21 -> found monolog/monolog[1.21.0, ..., 1.x-dev] but the package is fixed to 2.5.0 (lock file version) by a partial update and that
version does not match. Make sure you list it as an argument for the update command.
    - Root composer.json requires deployer/deployer ^4.3 -> satisfiable by deployer/deployer[v4.3.0, ..., 4.x-dev].

And what's the difference between installing Deployer with composer in the project folder or instead downloading "deployer.phar"?

Looks like you're trying to install deployer v4
Latest release is 6 and we're into RC for 7
The main difference is that if you install via composer, then every one on the project will be using the same version

Hi valguss,
I mean, I just followed the documentation where the only command you guys provided is composer require --dev deployer/deployer...
What am I supposed to do? I tried to install the RC version using composer require --dev deployer/deployer:v7.0.0-rc.8 and it works.
Now I'm trying to enter the following command vendor/bin/deployer.phar init, but VSCode prompts me to open the .phar file or, if I try on GitBash, I receive this error:
PHP Warning:  Phar::mapPhar(C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code): Failed to open stream: No such file or directory in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

Warning: Phar::mapPhar(C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code): Failed to open stream: No such file or directory in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2
PHP Fatal error:  Uncaught PharException: unable to open phar for reading "C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code" in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code:2
Stack trace:
#0 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code(2): Phar::mapPhar('deployer.phar')
#1 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21): eval()
#2 {main}
  thrown in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

Fatal error: Uncaught PharException: unable to open phar for reading "C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code" in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code:2
Stack trace:
#0 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code(2): Phar::mapPhar('deployer.phar')
#1 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21): eval()
#2 {main}
  thrown in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

I'm using Windows 10, maybe it has to do with this...

So if it's installed OK via composer, then the phar file should be in the vendor/bin directory. Double check it actually is
I haven't got any experience with running this through WIndows but this also feels like an environment issue. It might be worth removing deployer from composer and installing deployer like this:
https://deployer.org/docs/6.x/installation

It's in that directory but it doesn't work. I even tried with Docker but it doesn't work either...
At this point, I think I will find another way or another tool.
Thanks anyway!

Hi, I'm using Windows 10, Laravel 9.2 and PHP 8.0.2. I'm trying to install Deployer on a fresh Laravel project, using: composer require --dev deployer/deployer
I'm always getting this error:
 Problem 1
    - deployer/deployer[v4.3.0, ..., 4.x-dev] require monolog/monolog ^1.21 -> found monolog/monolog[1.21.0, ..., 1.x-dev] but the package is fixed to 2.5.0 (lock file version) by a partial update and that
version does not match. Make sure you list it as an argument for the update command.
    - Root composer.json requires deployer/deployer ^4.3 -> satisfiable by deployer/deployer[v4.3.0, ..., 4.x-dev].

And what's the difference between installing Deployer with composer in the project folder or instead downloading "deployer.phar"?

same problem :(

Hi valguss, I mean, I just followed the documentation where the only command you guys provided is composer require --dev deployer/deployer... What am I supposed to do? I tried to install the RC version using composer require --dev deployer/deployer:v7.0.0-rc.8 and it works.
Now I'm trying to enter the following command vendor/bin/deployer.phar init, but VSCode prompts me to open the .phar file or, if I try on GitBash, I receive this error:
PHP Warning:  Phar::mapPhar(C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code): Failed to open stream: No such file or directory in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

Warning: Phar::mapPhar(C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code): Failed to open stream: No such file or directory in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2
PHP Fatal error:  Uncaught PharException: unable to open phar for reading "C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code" in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code:2
Stack trace:
#0 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code(2): Phar::mapPhar('deployer.phar')
#1 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21): eval()
#2 {main}
  thrown in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

Fatal error: Uncaught PharException: unable to open phar for reading "C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code" in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code:2
Stack trace:
#0 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code(2): Phar::mapPhar('deployer.phar')
#1 C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21): eval()
#2 {main}
  thrown in C:\xampp\htdocs\LARAVEL\deployer-error-test\vendor\bin\deployer.phar(21) : eval()'d code on line 2

I'm using Windows 10, maybe it has to do with this...

try this:
 php vendor/bin/deployer.phar init


KYLIN-3272 Upgrade Spark to 2.3.2

KYLIN-3272 Upgrade Spark to 2.3.2

Pull Request Test Coverage Report for Build 3750

0 of 2 (0.0%)  changed or added relevant lines in 1 file are covered.
5 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.0008%) to 23.307%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

engine-spark/src/main/java/org/apache/kylin/engine/spark/KylinKryoRegistrator.java
0
2
0.0%

Files with Coverage Reduction
New Missed Lines
%

core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/MemDiskStore.java
5
77.81%

Totals

Change from base Build 3749:
0.0008%

Covered Lines:
16296

Relevant Lines:
69918

💛  - Coveralls

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@72c2361). Click here to learn what that means.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master     #284   +/-   ##
=========================================
  Coverage          ?   21.29%
  Complexity        ?     4436
=========================================
  Files             ?     1087
  Lines             ?    69918
  Branches          ?    10100
=========================================
  Hits              ?    14891
  Misses            ?    53624
  Partials          ?     1403

Impacted Files
Coverage Δ
Complexity Δ

...pache/kylin/engine/spark/KylinKryoRegistrator.java
0% <0%> (ø)
0 <0> (?)

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 72c2361...47489fc. Read the comment docs.


un auth metrics should return HTTP.STATUS=401 and not 2000

I have this

prometheus := fiberprometheus.New("my_server")
prometheus.RegisterAt(app, "/metrics", middleware.PrometheusAuthMiddleware(conf.Metric.User, conf.Metric.Pass))
app.Use(prometheus.Middleware)

my auth func

return func(c *fiber.Ctx) error {
		authHeader := c.Get(fiber.HeaderAuthorization)

		// Parse the credentials from the Authorization header
		username, password, err := parseBasicAuth(authHeader)
		if err != nil {
			return fiber.ErrUnauthorized
		}

		// Check the username and password
		if username != user || password != pass {
			return fiber.ErrUnauthorized
		}

		return c.Next()
	}

when invoke localhost:8083/metrics in body I get Unauthorized but http status is 200

using "github.com/ansrivas/fiberprometheus/v2"

Hey @sysmat I tried to reproduce this on my end, but it seems to be working just fine:
package main

import (
	"github.com/ansrivas/fiberprometheus/v2"
	"github.com/gofiber/fiber/v2"
)

func main() {
	app := fiber.New()

	prometheus := fiberprometheus.New("my_server")
	prometheus.RegisterAt(app, "/metrics", func(c *fiber.Ctx) error {
		return fiber.ErrUnauthorized
	})
	app.Use(prometheus.Middleware)

	app.Listen(":3000")
}

And then I invoked it like this:
✦ ❯ curl -v http://localhost:3000/metrics

*   Trying <IP_ADDRESS>:3000...
* Connected to localhost (<IP_ADDRESS>) port 3000 (#0)
> GET /metrics HTTP/1.1
> Host: localhost:3000
> User-Agent: curl/8.0.1
> Accept: */*
>
< HTTP/1.1 401 Unauthorized    <--------------------------------------------
< Date: Fri, 16 Jun 2023 14:35:20 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 12
<
* Connection #0 to host localhost left intact
Unauthorized

that strange, I use your case and still get 200

prometheus.RegisterAt(app, "/metrics", func(c *fiber.Ctx) error {
		return fiber.ErrUnauthorized
	})

my mistake, it works, I had a bug in my custom error handler


LAB_03c-Manage_Azure_Resources_by_Using_Azure_PowerShell.md.pdf

Description:
The architecture diagram is not translated (lab03c.png)

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

https://github.com/MicrosoftLearning/AZ-104-MicrosoftAzureAdministrator.fr-fr/issues/222


Refactor Konke Button "press" events

Refactor Konke Button "press" events so it does not rely on raw data manipulation at the "device" level.
This is to make it compatible with https://github.com/zigpy/zigpy/pull/591

Codecov Report

Merging #684 (8231019) into dev (50f603e) will increase coverage by 0.26%.
The diff coverage is 87.50%.

@@            Coverage Diff             @@
##              dev     #684      +/-   ##
==========================================
+ Coverage   83.12%   83.38%   +0.26%
==========================================
  Files         168      168
  Lines        3786     3792       +6
==========================================
+ Hits         3147     3162      +15
+ Misses        639      630       -9

Impacted Files
Coverage Δ

zhaquirks/konke/__init__.py
91.66% <85.00%> (+30.37%)
:arrow_up:

zhaquirks/konke/button.py
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 50f603e...8231019. Read the comment docs.

Pull Request Test Coverage Report for Build 453492767

21 of 24 (87.5%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.3%) to 83.386%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

zhaquirks/konke/init.py
17
20
85.0%

Totals

Change from base Build 452614486:
0.3%

Covered Lines:
3162

Relevant Lines:
3792

💛  - Coveralls


Fixed renaming missed namespace

See title

Codecov Report

Merging #176 (c7c2cec) into main (b2b8f68) will not change coverage.
The diff coverage is n/a.

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

@@           Coverage Diff           @@
##             main     #176   +/-   ##
=======================================
  Coverage   66.38%   66.38%
=======================================
  Files         111      111
  Lines        2118     2118
  Branches      216      216
=======================================
  Hits         1406     1406
  Misses        650      650
  Partials       62       62

Flag
Coverage Δ

appcommon
55.48% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Use updated dcoscli==0.5.1 library

Looks like 9623d7f breaks tests/test_cli.py, patch incoming!

I've updated this to 0.5.3 which was released this morning.


Error when attempting to delete with indexedDB persistence

I have a nextJS app router application, and I'm using syncedSupabase and indexedDB persistence. When I attempt to delete an observable, I see this error in the console:
Uncaught (in promise) DOMException: Failed to execute 'put' on 'IDBObjectStore': Symbol(delete) could not be cloned.
    at ObservablePersistIndexedDB._setItem (webpack-internal:///(app-pages-browser)/./node_modules/@legendapp/state/persist-plugins/indexeddb.mjs:340:20)
    at eval (webpack-internal:///(app-pages-browser)/./node_modules/@legendapp/state/persist-plugins/indexeddb.mjs:197:28)
    at Set.forEach (<anonymous>)
    at eval (webpack-internal:///(app-pages-browser)/./node_modules/@legendapp/state/persist-plugins/indexeddb.mjs:196:17)
    at Array.forEach (<anonymous>)
    at eval (webpack-internal:///(app-pages-browser)/./node_modules/@legendapp/state/persist-plugins/indexeddb.mjs:188:33)
    at Map.forEach (<anonymous>)
    at ObservablePersistIndexedDB.doSave (webpack-internal:///(app-pages-browser)/./node_modules/@legendapp/state/persist-plugins/indexeddb.mjs:187:23)
_setItem @ indexeddb.mjs:335
eval @ indexeddb.mjs:192
eval @ indexeddb.mjs:191
eval @ indexeddb.mjs:183
doSave @ indexeddb.mjs:182
Show 5 more frames
Show less

hmmm... thinking about this for a few mins, I'm thinking this may be about soft vs. hard delete. It sounds like this may be happening because under-the-hood, legend-state is trying to set a "deleted" column, but I don't current have a "deleted" column on my table
Will try adding that and see what changes

OK - that did seem to be the issue. Needed a deleted column on the table. Closing.

This is a problem, I'll look into it.

@jmeistrich two somewhat related questions...

When using indexedDB persistence, what's the best way to force a reset of the indexedDB? If I had some code that makes bad writes and puts my app in a weird state, I'd love to have a way to force a clean reset for users.
What does changing the version of the indexedDB config actually do under-the-hood? Will it trigger what I'm describing in (1.)?

@jmeistrich possibly related:
wen I turn off local persistence, but turn on realtime subscription from supabase, deleting a row in supabase (from a different client) causes my local state to update so that I actually create a new row with no attributes, but don't delete the row that should be deleted.
my suspicion is that somewhere we're doing a set/assign/update (whatever the appropriate term is in this context) rather than a delete.

I believe alpha.26 should fix this problem. Does it work better for you after the update?
For resetting, the syncState has a clearPersist function: https://legendapp.com/open-source/state/v3/sync/persist-sync/#syncstate. I'm also working on a way to clear all persistences globally, but it's not quite done yet.
The version parameter basically goes straight into indexedDB.open(databaseName, version). You'd change that version when you want to add or remove tableNames to make it change the database to have those tables.

gotcha! I'll test persistence in the next few hrs.
One option I'd be interested in is simply blowing away any local data and recreating the local persistent store if the version number changes.
Operationally, this seems like the simplest and least-bug-prone way for me to start making my application local-first.


Helm should delete job after it is successfully finished

I have a job bind to post-install,post-upgrade,post-rollback
    "helm.sh/hook": post-install,post-upgrade,post-rollback

when i’m running update charts i get Error: UPGRADE FAILED: jobs.batch "opining-quetzal-dns-upsert" already exists
kubectl get jobs returns
opining-quetzal-dns-upsert   1         1            12m

So, how we are supposed to use jobs as hooks if it is not deleted after it is successfully finished?
There is no way to update chart if it has such job.

I would love to see this and I will try to get around to submitting a PR for it if I have the time. In the meantime, I tag this on to the end of the job name as a workaround:
metadata:
  name: {{ template "fullname" . }}-{{ randAlphaNum 5 | lower }}

I'm currently using workaround from @thomastaylor312 and it is very-very-very bad to do it this way.
There are 2 issues:

If job wasn't finished successfully (by whatever reason) - it will be rescheduled again and again and again. I think we need something like a maxRetry parameter here.
If chart is deleted - job is not deleted by helm. So it will continue to be scheduled and fail indefinitely.

As a result I've just run into a performance issue with a storm of kill container / start container events.

@dzavalkinolx: We should probably bring this up in the kubernetes issues. That isn't so much a problem with Helm as it is with how Kubernetes Jobs work. Have you also tried setting restartPolicy: OnFailure so that it just restarts the container instead of creating a new pod?

This is a tricky one. Helm doesn't implicitly manage the lifecycles of things like this. In particular, it never deletes a user-created resource without receiving an explicit request from a user.
Now, we recently introduced an annotation called resource-policy that we could use for something like this. Currently, the only defined resource policy is keep, which is used to tell Tiller not to delete that resource on a normal deletion request. I suppose we could implement another policy with something like delete-on-completion that deleted a Pod or Job on completion.
Since Tiller does not actively monitor resources once they are deployed, I'm not sure this would be a terribly powerful annotation, but it could work on hooks because we do watch hooks for lifecycle events.

@dzavalkinolx Have you tried activeDeadlineSeconds?

@longseespace I tried that too, but it just kills the job after the amount of time and spins up a new one

I ran into this problem today too. I found out about Helm Hooks recently and I thought it would be perfect to implement pre-upgrade database migrations (rake db:migrate, for those of you familar with Rails). But then I found that Helm does not clean up completed jobs, so this doesn't work on a CI environment.
I'm probably missing something, but what's the point of having a job executed in a pre-upgrade / post-upgrade hook if once the job gets executed the first time you do helm upgrade, the next one it will fail?

That's why we recommend appending a random string to a job name if you know for sure you are going to re-run a job again.

I see, I'm not sure I like the approach of leaving behind a new successful job for every deployment. Right now what I've done is adding a new step to our deployment script that does kubectl delete job db-migrate-job --ignore-not-found before our helm upgrade.

I am having the exact same challenges with a python / django app. Does anyone have a mechanism such that helm will abort an upgrade if the pre-upgrade job fails?

I may take this once I get some other work done for 2.5

Have you finished this feature yet? If not, I would like to take this work.

@thomastaylor312 Have you finished this feature yet? If not, I would like to take this work.

@DoctorZK Feel free to take it. Thank you for offering to do it!

What about a simple annotation helm.sh/resource-policy: delete-job-after-run? When the job successfully run, helm delete this job.

Cool. I have thought out three ways to solve this problem.

Add a simple annotation in the hook templates, which is the easiest to implement. However, it can not solve this kind of problem: helm fails during the pre-install/pre-upgrade process, but users try to install/upgrade the release with the same chart again, which will incur resource objects name conflict in K8S. Therefore, with the approach, we should add another annotation, such as helm.sh/resource-policy: delete-job-if-job-fails .

Add flags after install/upgrade/rollback/delete commands (e.g., upgrade $release_name --include-hooks) which can solve name conflict problem, however, it will also remove some kinds of hooks that users are not intended to delete, such as configmap or secret.
I prefer the first one, which can control hooks with a finer granularity.

@DoctorZK as you suggests I would like to have another annotation helm.sh/resource-policy: delete-job-if-succeed. This is important when you're deleting a helm and have a job for cleanup, for now it's not possible to delete this job without running another job.
Are you willing to work on this? if not I can take care of it

Thanks for your help. I have finished the coding process, and now is under test. I will submit the pull request as soon as possible.

For those who want to have a workaround for this, until the final solution is implemented.
Instead of appending random characters to the Job object's name, the Job may delete itself from the APIserver as the last task before exiting. It is equally "elegant" but not leaking Job objects.
Sad facts:

You need to pass the APIserver credentials into the Job to do this.
You will lose the Job logs as those are deleted also.
Works only for objects which contains running code (works for Job, Pod, DS..., but not for PVC, 3rd party resources, etc.)

Can we get a quick run-down here on how this works while documentation is still forthcoming?

Specifically, I am interested in understanding how to add/run/monitor/update a job to an existing helm deployment. Thx!

For executing a job, you can define the job as pre-upgrade/post-upgrade hook and upgrade the release.

OK, I was having an issue with a post-upgrade job continually failing/restarting despite restartPolicy: Never. I'm sorry if I'm not comprehending this thread, but am I to understand that that behavior is now "fixed" with the canary build. Or do I need to set some sort of configuration?
Here is my current configuration:
{{- if .Values.job.enabled -}}
apiVersion: batch/v1
kind: Job
metadata:
  name: "{{.Release.Name}}"
  labels:
    heritage: {{.Release.Service | quote }}
    release: {{.Release.Name | quote }}
    chart: "{{.Chart.Name}}-{{.Chart.Version}}"
  annotations:
    "helm.sh/hook": post-install,post-upgrade
spec:
  template:
    metadata:
      name: "{{.Release.Name}}"
      labels:
        heritage: {{.Release.Service | quote }}
        release: {{.Release.Name | quote }}
        chart: "{{.Chart.Name}}-{{.Chart.Version}}"
    spec:
      restartPolicy: Never
      containers:
      - name: importer
        image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
        command: ["{{.Values.job.binary}}","{{.Values.job.cmd}}"]
{{- end -}}

There is a new annotation for it. The hook docs have been updated on master

Documented here - https://github.com/kubernetes/helm/blob/master/docs/charts_hooks.md
Adding this annotation worked for me:
"helm.sh/hook-delete-policy": hook-succeeded

I downloaded Helm v 2.6.2 and looked at the source and "helm.sh/hook-delete-policy": hook-succeeded doesn't seem to be in there.  Do you know when this will make it into a release?

@k8vance88 This will be landing in 2.7. We will be releasing an RC of it soon once we have the k8s 1.8 support merged in

@thomastaylor312 Did this land in 2.7?

yes, everything currently in master landed in 2.7.

Just to be clear... if I add "helm.sh/hook-delete-policy": hook-succeeded to my job. Then every deployment should recreate and re-run that job? Because that's not what I'm seeing here.

@macropin Is your hook defined as a post-install,post-upgrade (or pre as your case may be)? If it only has the post-install it will only run the first time

@thomastaylor312 It's defined as post-install,post-upgrade, so you're saying it should be working?

It will create a new object (generally a Pod or Job) each time you release. If you use the feature mentioned here, it will delete the job when it is done running. If for some reason a hook isn't deploying, it would be a separate issue

The job has the following annotations:
      annotations:
        "helm.sh/hook": post-install,post-upgrade
        "helm.sh/hook-weight": "5"
        "helm.sh/hook-delete-policy": hook-succeeded,hook-failed

The job only runs once on the first install, and never again on subsequent upgrades. Running Helm v2.7.0. Should I create a separate issue for this?

@macropin Yes. Could you please create another issue with details about your cluster and, if possible, an example chart that duplicates the issue

The job has the following annotations:
      annotations:
        "helm.sh/hook": post-install,post-upgrade
        "helm.sh/hook-weight": "5"
        "helm.sh/hook-delete-policy": hook-succeeded,hook-failed

The job only runs once on the first install, and never again on subsequent upgrades. Running Helm v2.7.0. Should I create a separate issue for this?

@macropin  How did you solve it? I'm facing a similar issue. It never creates job every subsequent upgrade. I'm using the same annotation as yours.

@sohel2020  and @macropin  - Same board, helm v3. The job is never re-ran on subsequent upgrades.

What is the solution for rerunning jobs on helm v3?

Same problem with Helm version: version.BuildInfo{Version:"v3.1.2", GitCommit:"d878d4d45863e42fd5cff6743294a11d28a9abce", GitTreeState:"clean", GoVersion:"go1.13.8"}
Jobs are neither deleted nor run on subsequent upgrade commands.

We regularly hit this one too in Helm 3.1.

In the future I believe we will be able to rely as well on job TTL

https://kubernetes.io/docs/concepts/workloads/controllers/job/#ttl-mechanism-for-finished-jobs

@paologallinaharbur only partially: for example if job ttl is 5 min, and you make a commit before and the previous commit caused job to fail so it is still there, you will have same issue
The two options that have worked for me:

before a helm upgrade, run kubectl delete job;
use the "helm.sh/hook-delete-policy": hook-succeeded,hook-failed policy, which is a better approach than item 1 BUT this approach will drop the logs of failed job which could be detrimental in some cases for troubleshooting

The best option would be to have a hook policy that is applied before a hook is run, eg something like
annotations:
  "helm.sh/hook-delete-policy": previous-hook-failed


Adding new profiles + regenerated common pages.

:warning: Validation status: warnings

File
Status
Preview URL
Details

advocates/adi-polak.yml
:warning:Warning
View
Details

advocates/dave-glover.yml
:warning:Warning
View
Details

advocates/chris-noring.yml
:white_check_mark:Succeeded
View

advocates/emily-freeman.yml
:white_check_mark:Succeeded
View

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/jasmine-greenaway.yml
:white_check_mark:Succeeded
View

advocates/jeremy-likness.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/adi-polak.png
:white_check_mark:Succeeded
View

advocates/media/profiles/chris-noring.png
:white_check_mark:Succeeded
View

advocates/media/profiles/dave-glover.png
:white_check_mark:Succeeded
View

advocates/media/profiles/emily-freeman.png
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

advocates/adi-polak.yml

[Warning] Failed to find Git account for the committer<EMAIL_ADDRESS>Solution: 1) File creator to associate email address<EMAIL_ADDRESS>with his or her Git account, or 2) Anyone to explicitly add "author: <Git account>" into markdown YAML header.

advocates/dave-glover.yml

[Warning] Failed to find Git account for the committer<EMAIL_ADDRESS>Solution: 1) File creator to associate email address<EMAIL_ADDRESS>with his or her Git account, or 2) Anyone to explicitly add "author: <Git account>" into markdown YAML header.

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


Cordova application - Object doesn't support property or method

I get this error in a cordova application:
Unhandled exception at line 97, column 5 in ms-appx://<my_apps_path>/www/js/util/device.js
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'tablet'

This is being ran on a Microsoft Surface tablet and my desktop PC. using the .desktop() method.
I'm using device.noConflict(); so it doesn't interfere with the window.device that cordova uses.

@maxaud This is a known implementation bug, pushing a fix now.

@maxaud Should be resolved as of v0.2.1

Wow, you're quick! Thanks a lot!


On MacOS, Concentration 2.1.1 does not render correctly when Sodium Extra's "Reduce resolution on MacOS" is enabled

Steps to reproduce

Create a new instance on MacOS
Install Concentration 2.1.1 with latest FAPI, Sodium, Sodium Extra, (optionally Reese's Sodium Options)
Go to Options > Video settings > Extras > and check "Reduce resolution on MacOS"
Relaunch the game
The game only renders the bottom-left quarter of the screen, as shown on the image below

Logs
latest.log
Expected behaviour
How Concentration 2.0.1 worked on MacOS with the same video settings

Try 2.2.0 with BORDERLESS mode (save as below 2.0.1), and EXCLUSIVE is the new borderless mode (same as after 2.1.0)

Try 2.2.0 with BORDERLESS mode (save as below 2.0.1), and EXCLUSIVE is the new borderless mode (same as after 2.1.0)

It still renders quarter of the screen; and clicking on "Video settings" crashes the game...

remove the concentration.json in config folder in the game directory and retry

try 2.2.1?

try 2.2.1?

No longer crashes but still only renders quarter of the screen ;-;

try 2.2.1?

No longer crashes but still only renders quarter of the screen ;-;

ughh, try switch fullscreen mode to native then switch to borderless? i dont have mac so cant test it and find the right solution

ughh, try switch fullscreen mode to native then switch to borderless? i dont have mac so cant test it and find the right solution

still doesn't work. im happy to screenshare if that helps at all

i just had a wild discovery:

if the window size in your launcher setting does not match the custom borders setting in concentration, it bugs and renders quarter of the screen
if the above two settings match, this does not happen and the game renders normally

i guess this is a nice little workaround meanwhile the real bug is being hunted down
https://github.com/user-attachments/assets/cfbd069f-68c6-4af4-a320-893a14a8deef

now the real issue should be
On MacOS, Concentration 2.1.1~2.2.2 only renders a quarter of the screen:

upon toggling fullscreen
if Sodium Extra's "Reduce resolution on MacOS" is enabled
Unless launcher window size setting matches Concentration's custom window setting

well no one is renaming an issue like this...

ok ill check how sodium extra's option work and to figure out if i can fix this problem by checking if this option is checked

here are the logs, corresponding to the video i attached from the previous threads. btw in both runs i toggled fullscreen on and off repeatedly
this one is the one that worked (matching dimensions)
2024-10-12-6.log
this one is the one that bugged (different dimensions)
2024-10-12-5.log
suggestion: RetiNO also does the same thing as that Sodium Extra setting on MacOS, maybe can use that to debug too (i havent tested it tho)

RetiNO and Sodium Extra have different implementation, so i dont know if i can fix it in the right way. as i dont have mac, i think i have to request you to spend some time testing it, sorry for that

wait, i have one more thing to ask
try redo the things (toggling fullscreen) in native, borderless, exclusive modes, and tell which modes have this issue and it can help me to choose where to put the code

RetiNO and Sodium Extra have different implementation, so i dont know if i can fix it in the right way. as i dont have mac, i think i have to request you to spend some time testing it, sorry for that

RetiNO does indeed behave differently than Sodium Extra, so let's not worry about RetiNO for now

try redo the things (toggling fullscreen) in native, borderless, exclusive modes, and tell me which modes have this issue and it can help me to choose where to put the code

only BORDERLESS renders the game in quarters

NATIVE and EXCLUSIVE behaves identically on my device
however, i just found another bug with NATIVE & EXCLUSIVE: On fullscreen, the buttons are displaced from where the cursor is. maybe open a new issue for that? at least it happens on my Mac

RetiNO and Sodium Extra have different implementation, so i dont know if i can fix it in the right way. as i dont have mac, i think i have to request you to spend some time testing it, sorry for that

RetiNO does indeed behave differently than Sodium Extra, so let's not worry about RetiNO for now

try redo the things (toggling fullscreen) in native, borderless, exclusive modes, and tell me which modes have this issue and it can help me to choose where to put the code

only BORDERLESS renders the game in quarters

NATIVE and EXCLUSIVE behaves identically on my device
however, i just found another bug with NATIVE & EXCLUSIVE: On fullscreen, the buttons are displaced from where the cursor is. maybe open a new issue for that? at least it happens on my Mac

i gotta slep now :) will keep helping with this issue tomorrow

thanks for your help, actually the second problem is rarely happened with unknown reason (maybe is because i forget to set the matching window size in game with the real window

thanks for your help, actually the second problem is rarely happened with unknown reason (maybe is because i forget to set the matching window size in game with the real window

oh im pretty sure the second problem happens on a mac then

concentration-fabric-1.21-2.2.2.zip
lets talk about the first question first
can u try this build? decompress it and put the concentration-fabric-1.21-2.2.2.jar in your mods directory and launch the game

now the customisation setting doesn't work anymore D;
(i set my launch window to 884x476 and my customisation is 1456x784, using BORDERLESS fullscreen doesnt even change the size anymore)
https://github.com/user-attachments/assets/57959280-d947-4695-803b-819a9d7bcc89

concentration-fabric-1.21-2.2.2.zip
try this one again?

concentration-fabric-1.21-2.2.2.zip try this one again?

it renders as quarters again T-T

huh, it may take some time to fix it, i have no idea 😭

Current behaviour of the mod:

if the window size in your launcher setting does not match the custom borders setting in concentration, it bugs and renders quarter of the screen
upon exiting borderless fullscreen, the window size is completely different

https://github.com/user-attachments/assets/cd09058b-6d41-4943-954d-bcfd8baadd2b
latest.log
On Fabric Loader 0.16.7, Minecraft 1.21.3

Concentration 2.3.0

okay, I bought a Mac mini so that I can investigate this problem by myself :), ill find out what cause this problem

any progress?

okay, I bought a Mac mini so that I can investigate this problem by myself :), ill find out what cause this problem

any progress?

not yet
actually, I'm doing experiencing macOS these days, xD


KeyError: 'bnds' when trying to compute spatial average

I am hitting an error that I don't understand.  If I try to do the following:
DS = xc.open_dataset('/p/user_pub/climate_work/zelinka1/xclim/CMIP6.ACCESS-CM2.r1i1p1f1.clt.annualxsmaps.nc',decode_times=False)
avg=DS.spatial.average('clt')
I get the following error:
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
Cell In[105], line 4
      2 # DS = DS.assign_coords(exp=("exp",['ssp126', 'ssp245', 'ssp370', 'ssp585']))
      3 DS
----> 4 avg=DS.spatial.average('clt')

File [~/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py:195](http://<IP_ADDRESS>:8082/lab/tree/scripts/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py#line=194), in SpatialAccessor.average(self, data_var, axis, weights, keep_weights, lat_bounds, lon_bounds)
    192 elif isinstance(weights, xr.DataArray):
    193     self._weights = weights
--> 195 self._validate_weights(dv, axis)
    196 ds[dv.name] = self._averager(dv, axis)
    198 if keep_weights:

File [~/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py:693](http://<IP_ADDRESS>:8082/lab/tree/scripts/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py#line=692), in SpatialAccessor._validate_weights(self, data_var, axis)
    687         raise KeyError(
    688             f"The weights DataArray does not include an {key} axis, or the "
    689             "dimension names are not the same."
    690         )
    692 # Check the weight dim sizes equal data var dim sizes.
--> 693 dim_sizes = {key: data_var.sizes[key] for key in self._weights.sizes.keys()}
    694 for dim, size in self._weights.sizes.items():
    695     if size != dim_sizes[dim]:

File [~/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py:693](http://<IP_ADDRESS>:8082/lab/tree/scripts/miniconda3/envs/xclim2/lib/python3.10/site-packages/xcdat/spatial.py#line=692), in <dictcomp>(.0)
    687         raise KeyError(
    688             f"The weights DataArray does not include an {key} axis, or the "
    689             "dimension names are not the same."
    690         )
    692 # Check the weight dim sizes equal data var dim sizes.
--> 693 dim_sizes = {key: data_var.sizes[key] for key in self._weights.sizes.keys()}
    694 for dim, size in self._weights.sizes.items():
    695     if size != dim_sizes[dim]:

File [~/miniconda3/envs/xclim2/lib/python3.10/site-packages/xarray/core/utils.py:427](http://<IP_ADDRESS>:8082/lab/tree/scripts/miniconda3/envs/xclim2/lib/python3.10/site-packages/xarray/core/utils.py#line=426), in Frozen.__getitem__(self, key)
    426 def __getitem__(self, key: K) -> V:
--> 427     return self.mapping[key]

KeyError: 'bnds'

I can't see what is wrong with this dataset that is triggering this error, since I can perform this operation on other datasets that look essentially identical.

In this dataset, the lat_bnds and lon_bnds are somewhat atypical/complicated and vary by experiment, time, lat, and lon (xcdat currently only works for static bounds, e.g., lat_bnds(lat)):
ds.lat_bnds

<xarray.DataArray 'lat_bnds' (exp: 4, time: 251, lat: 90, bnds: 2)> Size: 1MB

I suspect that your bounds actually are static, but this isn't reflected in the dataset because of how the original files were opened / saved:
ds.lat_bnds.values[0, 0] - ds.lat_bnds.values[2, 10]:

array([[0., 0.],
[0., 0.],
[0., 0.],
...

One simple fix you could consider is to regenerate the bounds (please verify the re-generated bounds are the same as the original bounds):
ds = ds.drop_vars(['lat_bnds', 'lon_bnds'])
ds = ds.bounds.add_missing_bounds(['X', 'Y'])
dsa = ds.spatial.average('clt')

You may also be able to do something like this:
ds['lat_bnds'] = ds.lat_bnds.isel(time=0, exp=0)
ds['lon_bnds'] = ds.lon_bnds.isel(time=0, exp=0)
dsa = ds.spatial.average('clt')

Thank you, that works. The dataset in this file was originally generated by concatenating 4 datasets (one for each of the ssp experiments). I guess concatenating datasets can lead to apparently non-static lat_bnds and lon_bnds on the resulting combined dataset.

I am not sure what exactly happened, but bound dims can be sensitive to arguments like data_vars and coords in xarray/xcdat open_mfdataset. xcdat uses data_vars=minimal by default. xarray uses all, which can sometimes contribute to this kind of behavior (though I don't know if that is what happened in this case).

This issue can be resolved with this workaround, but could be re-visited if there was a feature request to handle this kind of behavior.


Feature request: implement :branch for svn

I noticed the :branch option is not used for svn. I am not a Ruby developer, but I have a suggestion on how to implement this. Implementing the branch option would provide more meaningful revision messages, and will make it a bit easier to use different branches for different environments (this is a common svn branching structure)
We could simply set the internal repository url by concatenating :repo_url and :branch. For example:
set :repo_url, 'https://github.com/user/repo'
set :branch, 'trunk' #default is "trunk". Other examples: "branches/feature_x" or "tags/1.0.0"

Revision log messages will also become more meaningful (currently always display "master"):
Branch trunk (at 22) deployed as release<PHONE_NUMBER>4855 by Marco
Branch branches/feature_x (at 22) deployed as release<PHONE_NUMBER>4855 by Marco

It has been several years since I used Subversion, but could this work?
# deploy.rb
set :branch, "trunk"
set :repo_url, -> { "svn://myhost/myrepo/#{branch}" }

Then when you override :branch (e.g. in production.rb), the repo URL will be built accordingly.
Is this what you had in mind?

Yes, that would probably do.
Not sure if this is practical with backwards compatibility, but even nicer would be if this is default behavior when :scm is "svn" (as in starter post example)

Considering the simplicity of the workaround, and the fact that this would almost certainly break backwards compatibility, I'm inclined to leave the behavior as-is.
But like I said, I'm not a Subversion user, so maybe there is a solution I'm not seeing that will preserve backwards compatibility. I'll leave this issue open in case anyone wants to chime in with other ideas.

Maybe it would be sufficient to make the workaround example part of the documentation?

I tried it like this, but the :branch value from my stage is not used.
# deploy.rb
set :repo_url, "https://svn.example.nl/foo/#{fetch(:branch)}"

# stages/staging.rb
set :branch, 'trunk'

Console output:
# Running: cap staging svn:check
(..)
Running /usr/bin/env svn info https://svn.example.nl/foo/master
(..)

You need to use a proc, as I showed in my example:
set :repo_url, -> { "svn://myhost/myrepo/#{branch}" }

Confirmed, that works :)

So, what next? Issue closed, or do we want to treat this as a doc issue, or does someone want to make a PR?

Maybe put this as an example on http://capistranorb.com/documentation/getting-started/configuration/? Or do you know a better place?

Maybe put this as an example on http://capistranorb.com/documentation/getting-started/configuration/? Or do you know a better place?

Great idea @marcovtwout, do you want to prepare a PR for the capistrano/documentation repo ?

https://github.com/capistrano/documentation/pull/145


Resolve Date Time Issues

This pull request fixes major issues with how dates worked on the Event frontend of the CSXL application.
Major Changes

Fixed error where the "edit date" field for an event would not show the correct time upon editing.
Fixed error where dates sometimes would display correctly.
Re-fix error where past events would show on the events page.
These errors were fixed by using the DatePipe to convert dates to the exact format that matInput expects for dates.

Testing

These features were tested on the frontend using honcho start.

This PR resolves #134

Thanks for getting to the bottom of this mystery!

Sounds great - that ticket will be taken up next, just wanted to put a 🩹 on it while that was done!


Add feedback on the progress of the request

This morning I suppose OpenIA resply slowly,
Without any feedback I click on the IA commit button again, still nothing I click a 3rd time
And now my commit message change like 3 time in a row qucikly
I would like some feedback where the request is and/or not be able to send the request while the first one is not done? 🙏

Good suggestion :100: . Will look into it. Thanks.


A cookie associated with a cross-site resource at http://youtube.com/ was set without the SameSite attribute.

When I open a youtube video with lity I get in the console this error:

A cookie associated with a cross-site resource at http://youtube.com/ was set without the SameSite attribute.

This seems to happen on the demo version aswell.
That is the output of the console from https://sorgalla.com/lity/ after clicking the youtube button

That's nothing related to lity but coming from youtube.com when the iframe is loaded.


Update StartSsr.php to support rutime options

This commit allows to start the runtime with specific options. For example by running
php artisan inertia:start-ssr --runtime_options=--max-old-space-size=4096
one can explicitly configure the memory limit and execute something like:
node --max-old-space-size=4096 bootstrap/ssr/ssr.mjs

Heya. We removed our master branch. Feel free to re-attempt this to 1.x!


How to run npx scripts?

Maybe I'm dum, but how do I run npx scripts with dum?

Nobody knows ¯\_(ツ)_/¯

this only runs locally installed packages

Oh, got it.
But why does it say "dum replaces npm run and npx" on the Readme?


bottle: new formula license may be a list, not just a string

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?
[x] Have you successfully run brew man locally and committed any changes?

Previously, the logic to add a bottle block for a new formula assumed that the license was a string, but this is no longer the case. A formula was added with a list of licenses and the new bottle block (https://github.com/Homebrew/homebrew-core/commit/2a73560f670d271d24364fd04419e4b87b9f2f7e) got added in the wrong place which broke CI for a bit until it was manually fixed: https://github.com/Homebrew/homebrew-core/pull/61551.
cc @chenrui333

Looks good for a workaround. We're going to need to use a real parser in the medium term here, though.

Or, alternatively, consider putting the bottle block "higher" so we can ignore more stuff below it.

Thanks @dtrodrigues ❤


[WIP] Add documentation for events

Help is welcome, as well as feedback.

Thank you very much for the comments. I will be sure to update my PR with them!

Has been done already


divider not dragging

When I click and drag on a divider nothing happens visually. Have heard that it works for other users.
I've searched the code and have added log outputs. The event seems to be handled.
Does anybody else have this problem?

I can confirm, no matter what the left handle nor the bottom doesn't do anything.

See https://github.com/rxi/lite/issues/113


regex pattern not working

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
  <TextFieldElement
        required
        margin="dense"
        name="Interval"
        fullWidth
        label="Duration"
        type="number"
        inputProps={{
          min: 1,
        }}
        validation={{
          pattern: {
            value: /^(0|[1-9]\d*)$/,
            message: 'Duration should have minimum of 1',
          },
        }}
      />

how can i put regex pattern to textfield element for validation
Expected behavior 🤔
No response
Steps to reproduce 🕹
Steps:

@santhoshkarthi002: The validation object is being passed to react-hook-form, but it is not triggering the error. This behavior persists even when using native HTML input.
Try using validate instead of pattern in validation prop.
validation={{
    validate: (value) => {
      if (!/^(0|[1-9]\d*)$/.test(value)) {
        return 'Duration should have minimum of 1';
      }
    },
  }}

it,s working, Thank you.

Just for anyone finding this, with v7 the solution above is no longer valid. Check the v7 beta announcement (#252 ) for details. Essentially it must now be rules:
<TextFieldElement
  ...
  rules={{
    required: true,
    validate: (value) => {
      if (!/^$|^\d+[.,]?\d{0,2}$/g.test(value)) {
        return 'Please enter a valid number..';
      }
    }
  }}
/>


Always persist IndexConfig

Adds tests for adding indexes as well
fixes #285
fixes #284

One question I have:
Are there any consequences with the user overwriting an existing index and changing Unique from false to true, for example?

That all kinda makes my head hurt. For sure there could be issues once we support back-indexing already existing data. But since that's not yet the case, does switching the value of Unique have any consequences from the time it is switched going forward?

There are no knock-on effects to changing an existing index like that @asutula, it will just no longer check if a key is unique. The only place that the 'uniqueness' is persisted is in the index definition. The indexed data itself doesn't care about this directly, just the index is responsible check checking this.

The only consequences of course, are that if Unique was false previously, and then set to true, those past values that may or may not be unique will no longer be checked, only new data will be checked for uniqueness. So this won't throw, but it might be unexpected behavior. Hence why something like #286 would be good here as well.


UXC-10 & 15 & 19: Having two semantics with different terminology for the status “Bound“ and “Available” or “Completed” and “Running” should be discussed

Description
UXC-10 & 15 & 19:
Having two semantics with different terminology for the status “Bound“ and “Available” or “Completed” and “Running” should be discussed with UA -> Because you lose context of the semantic of the object status
In general, to make it more easy for users to scan the table pages it would be important to have very clear definitions of what’s green, what’s orange, what’s red, and not to mix them up.
This also means having consistent terminology between the different resources.

Reasons
https://wiki.one.int.sap/wiki/display/uxc/UXC-019
https://wiki.one.int.sap/wiki/display/uxc/UXC-015
https://wiki.one.int.sap/wiki/pages/viewpage.action?spaceKey=uxc&title=UXC-010

Attachments

we can't use the same semantic everywhere, because for example running and completed are "green" positive status of pod, but have different meaning, the same for persistent volumes.


Add type hinting

Increased understandability by adding type hints for global variables, class attributes, and variables inside global functions.
Added return types for global functions that don't return None.
Also fixed some docstrings.

In trying to avoid the | notation for Union types, I just assigned many of the Union[(T), None] type variables their T type. I wondered if Pyre would catch this, and lo and behold it did. Do you want me to fix them all by adding the Union type from the typing module?

It looks like a lot of the Pyre errors were problems with None.  Is there a configuration option for Pyre
to ignore this particular error (since using None for an uninitialized value or attribute is a very common
practice)?  Using Union[(T), None] seems like a hack to cover up the fact that the type-checker
is being too strict in rejecting None as a valid type for a variable.
Please research Pyre config options, and let me know what you find.
 -- Tim
On Monday, January 2, 2023 at 11:07:31 PM MST, Nathan Bird @.***> wrote:
In trying to avoid the | notation for Union types, I just assigned many of the Union[(T), None] type variables their T type. I wondered if Pyre would catch this, and lo and behold it did. Do you want me to fix them all by adding the Union type from the typing module?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Error creating service-linked role with name ecs.amazonaws.com

Creating the AWSServiceRoleForECS in Terraform may be problematic if it already exists. Also, if there are other applications running on ECS in the same AWS Account, deleting it as part of a Terraform destroy could impact other deployments.
I recommend moving this outside of Terraform and into the makefile.
If you run the deploy with this service-linked role already created, it fails with the following message:
InvalidInput: Service role name AWSServiceRoleForECS has been taken in this account, please try a different suffix.
  on terraform/aws/ecs.tf line 3, in resource "aws_iam_service_linked_role" "service-linked-role":    3: resource "aws_iam_service_linked_role" "service-linked-role" {

Agreed. Now that I understand how the linked role relates, I can see that it would be difficult/inappropriate to manage in TF.  If it's explicitly needed for ECS provisioning, we may be able to drop in a TF data element pointing to the linked role so it will fail if it doesn't already exist.

As a workaround, running tf a second time worked for me. I think there is a race condition due to parallelism and a missing depends_on somewhere...


feat!: add download utils function for shared aggregated and algo state

Related issue
fixes FL-633
Companion PR

https://github.com/Substra/substra-documentation/pull/313

Summary
To ease analytics usage for users, we implement tool function such as:
download_algo_state
download_shared_state
download_aggregated_state
It is now possible to download both from round or rank.
See https://www.notion.so/owkin-fdn/Federated-Analytics-in-SubstraFL-5685c4f2549748a89a3ad2e314cde886?pvs=4 for more info.
Please check if the PR fulfills these requirements

[x] If the feature has an impact on the user experience, the changelog has been updated
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)
[x] The commit message follows the conventional commit specification

End to end tests: :hourglass_flowing_sand: STARTING


updated Ansible module names

Description
Updated Ansible module names to adopt to new naming scheme
Checklist/ToDo's

[ ] Added documentation?
[ ] Added release note entry? (  docs/release-notes.md )
[ ] Tested?

Let's try it...


Card thumbnail should show icons for activity

Previously captured in #5
Read status, card index, star count, number of comments should all show up on slide thumbails.
comments_count and star_count should be kept up in a transaction

Factor out StarCount into a CardDecorator subclass

Comment threads need to have a similar comment_count like we do for star_count.

A few of the last few commits on this issue are also notionally related to #16 issue


ADS-8014 - Support Video & Native for Prebid

Type of change

[ ] Bugfix

[ ] Feature

[ ] New bidder adapter

[x] Updated bidder adapter

[ ] Code style update (formatting, local variables)

[ ] Refactoring (no functional changes, no api changes)

[ ] Build related changes

[ ] CI related changes

[ ] Does this change affect user-facing APIs or examples documented on http://prebid.org?

[ ] Other

Description of change

This pull request adds support for video and native Prebid advertisements in the Nativo Bid Adapter.

Other information

@jsfledd could you try running gulp lint and see if any lint errors are showing up for you? Just want to make sure that github bot message is residual from a prior fix.

I see a few lint warnings but no errors


Add git data command line providers.

Pull Request Test Coverage Report for Build 19

11 of 150 (7.33%)  changed or added relevant lines in 12 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-23.4%) to 55.489%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/Providers/WindowsGitDataCommandLineProvider.cs
0
5
0.0%

src/Services/MainService.cs
0
5
0.0%

src/Models/Coveralls/Head.cs
0
8
0.0%

src/Providers/LinuxGitDataCommandLineProvider.cs
0
8
0.0%

src/Providers/OsxGitDataCommandLineProvider.cs
0
8
0.0%

src/Models/Coveralls/Git.cs
1
15
6.67%

src/Providers/GitDataProviderFactory.cs
0
16
0.0%

src/Providers/GitDataCommandLineProvider.cs
0
75
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/Services/MainService.cs
1
8.82%

Totals

Change from base Build 18:
-23.4%

Covered Lines:
278

Relevant Lines:
501

💛  - Coveralls


Multi-value returns do not work in Windows ABI

Run the following test with bytecodealliance/cranelift#1231 applied.
Test fails with Verifier errors on Windows 10 x86-64, for details see https://github.com/bytecodealliance/cranelift/pull/1231#issuecomment-561820442
Test does not fail on ubuntu.

function %test_i128() -> i128 {
ebb0:
    v0 = iconst.i64 0x4242_3535_1234_5678
    v1 = iconst.i64 0xabcd_ef01_beef_b411
    v2 = iconcat v0, v1
    return v2
}
; run: %fn() == 0x4242_3535_1234_5678_abcd_ef01_beef_b411

CC @fitzgen

It looks like the bug is in x86 legalize_signature:
https://github.com/bytecodealliance/wasmtime/blob/c5b6c57c34f89d865e07939eff67d6687e9339e2/cranelift/codegen/src/isa/x86/abi.rs#L259-L277
Function that returns only i128 is single-return before legalization, so struct-return parameter is never introduced, even though legalize_args doesn't assign registers properly. After changing it to always backup arguments it generates correct code:
function %test_i128(i64 sret [%rcx], i64 fp [%rbp]) -> i64 sret [%rax], i64 fp [%rbp] windows_fastcall {
    ss0 = incoming_arg 16, offset -48

                                block0(v3: i64 [%rcx], v6: i64 [%rbp]):
[RexOp1pushq#50]                    x86_push v6
[RexOp1copysp#8089]                 copy_special %rsp -> %rbp
[RexOp1adjustsp_ib#d083]            adjust_sp_down_imm 32
[RexOp1pu_iq#80b8,%rax]             v0 = iconst.i64 0x4242_3535_1234_5678
                                    v4 -> v0
[RexOp1pu_iq#80b8,%rdx]             v1 = iconst.i64 0xabcd_ef01_beef_b411
                                    v5 -> v1
[-,-]                               v2 = iconcat v0, v1
[RexOp1st#8089]                     store notrap aligned v0, v3
[RexOp1stDisp8#8089]                store notrap aligned v1, v3+8
[RexOp1rmov#8089]                   regmove v3, %rcx -> %rax
[RexOp1adjustsp_ib#8083]            adjust_sp_up_imm 32
[RexOp1popq#58,%rbp]                v7 = x86_pop.i64
[Op1ret#c3]                         return v3, v7
}

Disassembly of 46 bytes:
   0:	40 55                	push	rbp
   2:	48 89 e5             	mov	rbp, rsp
   5:	48 83 ec 20          	sub	rsp, 0x20
   9:	48 b8 78 56 34 12 35 35 42 42
				movabs	rax, 0x4242353512345678
  13:	48 ba 11 b4 ef be 01 ef cd ab
				movabs	rdx, 0xabcdef01beefb411
  1d:	48 89 01             	mov	qword ptr [rcx], rax
  20:	48 89 51 08          	mov	qword ptr [rcx + 8], rdx
  24:	48 89 c8             	mov	rax, rcx
  27:	48 83 c4 20          	add	rsp, 0x20
  2b:	40 5d                	pop	rbp
  2d:	c3                   	ret

I'll make a PR.


Remove broken workaround for ILP32 detection on ARM

Matching the compiler filesystem path with some quite arbitrary string like arm-linux is broken. It will not match a host compiler path like /usr/bin/c++, but may even erroneously match on other architectures.
Second, while it may be possible to make injecting an ILP32 define work, it requires the same workaround in every downstream user.

Thank you. This looks okay to me, as the WA is not robust enough to cover all compilers it is better to remove it to avoid confusion. The proper solution will be to update the definition in the header file as in https://github.com/oneapi-src/oneAPI-spec/pull/468
Your commit will be merged into an internal staging repo first for validation and then pushed to this repository in the following release. It will still be your commit in the git log with the original commit author, message etc.
Currently your commit fails one lint check in CI due to message title being slightly too long (max 50 chars). Unfortunately this is not part of automated CI in this repo yet. Would you mind tweaking that and updating the PR? You can locally run "script/lint" to verify that it passes. Thanks.

I could change the subject to e.g. "Remove broken ILP32 detection on ARM workaround", which is only 47 instead of 51 characters, but does that really improve readability?
There is no hard limit in git for the subject line. The only thing approximating the 50 characters is the filename length default of 64, which leaves 53 characters for the subject (5 chars nnnn- prefix, .patch suffix).
The linux kernel policy limits the subject to 72 characters IIRC, with an average of about 50.

I could change the subject to e.g. "Remove broken ILP32 detection on ARM workaround", which is only 47 instead of 51 characters, but does that really improve readability?
There is no hard limit in git for the subject line. The only thing approximating the 50 characters is the filename length default of 64, which leaves 53 characters for the subject (5 chars nnnn- prefix, .patch suffix).
The linux kernel policy limits the subject to 72 characters IIRC, with an average of about 50.

Thanks. I have no concern with longer subject lines. This just happens to trip a CI checker. cc @mav-intel who can comment on the lint checker configuration.


feat(ai-flyout-menu): track open/close state

Closes #3334
Summary

Provide a way to track the filter menu's open/close state by emitting events from underlying elements.

Change List (commits, features, bugs, etc)

Added flyoutOpenChange event to track the filter's active state.
You can also get the filter's current state by calling getFlyoutState public method on the component.

Acceptance Test (how to verify the PR)

Clicking on the filter trigger should output the filter's state in the console

Regression Test (how to make sure this PR doesn't break old functionality)

The changes shouldn't really break anything. Let me know if it does, though.

Things to look for during review

[ ] Make sure all references to iot or bx class prefix is using the prefix variable
[ ] (React) All major areas have a data-testid attribute. New test ids should have test written to ensure they are not changed or removed.
[ ] UI should be checked in RTL mode to ensure the proper handling of layout and text.
[ ] All strings should be translatable.
[ ] The code should pass a11y scans (The storybook a11y knob should show no violations). New components should have a11y test written.
[ ] Unit test should be written and should have a coverage of 90% or higher in all areas.
[ ] All components should be passing visual regression test. For new styles or components either a visual regression test should be written for all permutations or the base image updated.
[ ] Changes or new components should either write new or update existing documentation.
[ ] PR should link and close out an existing issue

You should also run yarn format and yarn lint --fix before pushing.
You can check for any errors or warnings with yarn format:check && yarn lint.

Hey @davidicus,
Could you please let me know what the next steps would look like? Are we waiting for something to be added/changed to the PR? New here, so just curious about the process and if anything needs to be done from my side.
Thanks!