Support to refresh the opened Editor using Ctrl+R

Storage Explorer Version: 1.8.0_20190507.2
Platform/OS: Windows 10/macOS High Sierra/Ubuntu 18.04
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Expand Cosmos DB account -> Database -> Collection -> Document.
On the opened document view, Try to use Ctrl+R to refresh the editor.

Expect Experience:
Pressing Ctrl+R refreshes the opened editor.
Actual Experience:
Nothing happens.

@djlan, you can work with @craxal to get the ctrl+r accelerator added to y'all's editors.

Azure Storage Explorer support for Azure Cosmos DB has been discontinued as of v1.24.0. We recommend users to use Azure Cosmos DB’s Data Explorer, which can be found in Azure Portal or as a stand-alone version in http://cosmos.azure.com/ for the best Azure Cosmos DB experience. You can also find additional Azure Cosmos DB tooling here: Azure Cosmos DB Tools


Bulk import stacks should always create logs bucket and this should be used for job files

Bulk import jobs will put logs into a bucket if the option to create a bucket is chosen. Make this compulsory, rather than allowing the user to choose an existing bucket for the logs. In addition, use this bucket for the storage of the bulk import job JSON files rather the config bucket.

Merged into main.


feat: only reload on loadFn and args input changes

BREAKING CHANGE: Changes to the load function and it args now trigger a reload. Changes to configuration like debounceTime, staleData and the loading or error templates will no longer trigger a reload.

Resolves #25


Slurm scheduler

I will start to develop the scheduler for Iris (see docs here https://hpc.uni.lu/users/docs/slurm.html)

I have created a branch called "slurm" in my repository. I have already started with a work around

Done in the devel version


Add support for Logging e2e testcases

Hi @Jeevaann, Can you please squash the commits? And these commit contains changes for playbooks/roles/ocp-e2e/tasks/main.yml.
Also please add new line at end of the files.

Yes, I have squashed the commits and also added new line at the end of the files. This is all together a new playbook which will run logging e2e testcases from openshift-test-private repo.

/lgtm


Fix explosions with same source, and target pos

About the PR
If an explosion source, and target had the same position, it would become (NaN, NaN), which would cause TryThrow to crash. This change avoids the code accidentally creating a Vector2(NaN, NaN) by not calling Normalized, when it's a Vector2.Zero. TryThrow knows how to handle Vector2.Zero, so it works.
Changelog
:cl:

fix: prevent crash with explosions that have same source, and target positions

@ElectroJr It actually crashes the server when it happens


Change english readme as default and add contact info.

Can we make sure that all the document link in README also target in English version? @ujjboy

Can we make sure that all the document link in README also target in English version? @ujjboy

Done.


Published NANOAOD NANOAODSIM files type

related to #8273
and /RelValTTbar_13/CMSSW_9_4_0_pre3-94X_mc2017_realistic_v4_RelVal_nanoaod94X-v2/NANOAODSIM test dataset
The format declared in dbs should be something different than EDM, for consistency.
Not so sure what other type is possible : @yuyiguo ?

@vlimant, Jean-Roch, this is not an issue any more, right?

NANOAODSIM is not of EDM type, and will never be. If we care about the declared type in dbs, we need to declare the correct type. if we don't care about the declared type in dbs, we can drop this.
hence the question : what are the allowed types in dbs @yuyiguo and do we have the handle in the agent to inject a file type different than "edm"

These are the current types dbs has
EDM
LUMI
LUMI-SA
LUMI-VDM
PIXDMP
STREAMER

the NANOAOD, NANOAODSIM can exist in both edm (PoolOutput module) or non-edm (NanoAODOutputModule). The most usual case is non-edm (see above).
I would not be sure how to name the new type in DBS, and whether we need a new type ; will come back to this after consulting the nanoaod commissioning group

If we decide it's important to have it in the agent, please reopen.


core dump when calling ht.init() in multiple GPUs mode

I'm trying to build tf model with HugeCTR embedding plugin in hugectr_tf_ops.so. When I call ht.init(), only one GPU mode works well, multiple GPUs mode (2 or 4) fails. My code is as below:
import hugectr_tf_ops as ht gpus = [0,1,2,3] ht.init(visiable_gpus=gpus, seed=seed, key_type='int64', value_type='float',                     batch_size=BATCH_SIZE, batch_size_eval=BATCH_SIZE)
The training log blocks at "[06d11h00m33s][HUGECTR][INFO]: Global seed is 1024" and finally ends up with core dump.

Could you please provide a demo about how to reproduce this issue?

Also, we implemented a new embedding plugin, which is called SparseOperationKit and more friendly to original TensorFlow, and encourage users to try that python module. The documents for SparseOperationKit: https://github.com/NVIDIA/HugeCTR/tree/master/sparse_operation_kit#documents

I fixed it. It's because NCCL is not running properly in my docker environment, thus, multi GPUs cannot communicate as expected. By default, HugeCTR doesn't output NCCL log, I checked NCCL log by export "NCCL_DEBUG=INFO" and found the shared memory allocated for docker is too small. By recreating docker with larger "--shm-size", both NCCL and HugeCTR work well.

Closing. Thanks @MuYu-zhi for your contribution! (see also v3.4 release notes)


Hash for entire dataframe

Hi, does Polars-hash support hashing entire dataframes? Something that can serve the purpose of __hash__ for the purposes of caching computations.

Hi @mkleinbort-ic, no it's only on Series level. What are you trying to achieve by caching the computations?

It's to support caching of functions that take in a data frame as an input. This is very common - see streamlit as an example.

Do you requires stability of the hash across polars versions?

Stability is always nice, but no, not necessary - a Polars update probably merits invalidating caches.

Closing this as not planned


New package: Replace v0.2.0

Registering package: Replace
Repository: https://github.com/jwscook/Replace.jl
Created by: @jwscook
Version: v0.2.0
Commit: 31c219f70a0344cbf8f6bc9f4973a21a3cc5d357
Reviewed by: @jwscook
Reference: https://github.com/jwscook/Replace.jl/commit/31c219f70a0344cbf8f6bc9f4973a21a3cc5d357#commitcomment-40481534

@jwscook Can you please re-trigger Registrator? This will fix the merge conflict.
[noblock]

@jwscook if I remember correctly you wanted this PR to be closed?

Do go ahead and close it - thanks. It's a trip hazard and not fit for release.


test: e2e: allow "bring your own" kcp mode

Right now the e2e framework starts a kcp server or servers internally to the test. While this has many advantages, in some cases a dev may want to provide a running kcp to a test instead (for example when they control where break-points and/or debugging exist in the running server). We should allow for this somehow, but not try to check that the given kcp is conformant, etc.
/cc @sttts

Is this something we still need, now that we can run tests with kcp in-process for debugging?

I think we still need this. Running kcp in-process today still implies spinning up a server for ever test or set of tests. Ideally it will be possible for an e2e run to target a single persistent server/set of servers to minimize test runtime and resource utilization.

Is "a persistent set of servers" equivalent to "BYO kcp", or can they be differentiated? In other words, if we could do persistent servers in the e2e (be they in-process or external), would we still also want BYO kcp?

I don't think BYO is different from persistent servers. In either case, the server deployment would be performed before a starting a test run, and the run would need to be configured to use the servers. The heavy lifting here will be in ensuring our e2e tests are sufficiently isolated and idempotent to support running against a persistent server.

This is done with --use-default-kcp-server


SizeFormatHelpers: defend against invalid sizes

What kind of change does this PR introduce?
Avoids having NaN undefined in the chunk size.
before:
Hash: a767d25c0ab9f6137502
Version: webpack 4.3.0
Time: 351ms
Built at: 3/29/2018 2:57:47 PM
                           Asset           Size  Chunks             Chunk Names
                       bundle.js       6.33 KiB    main  [emitted]  main
                     0.bundle.js      462 bytes       0  [emitted]
c0a8be7a5c1867a7212e.module.wasm  NaN undefined       0  [emitted]
                      index.html      182 bytes          [emitted]
Entrypoint main = bundle.js
[./src/index.js] 90 bytes {main} [built]
[./src/test.wasm] 71 bytes {0} [built]
Child html-webpack-plugin for "index.html":
     1 asset
    Entrypoint undefined = index.html
    [../../buildin/module.js] (webpack)/buildin/module.js 497 bytes {0} [built]
        + 2 hidden modules

after:
Hash: 6d167786e870e3758cab
Version: webpack 4.3.0
Time: 335ms
Built at: 2018-3-29 15:14:06
                           Asset          Size  Chunks             Chunk Names
                       bundle.js      8.58 KiB    main  [emitted]  main
                     0.bundle.js     492 bytes       0  [emitted]
c0a8be7a5c1867a7212e.module.wasm  unknown size       0  [emitted]
                      index.html     182 bytes          [emitted]
Entrypoint main = bundle.js
[./src/index.js] 90 bytes {main} [built]
[./src/test.wasm] 71 bytes {0} [built]
Child html-webpack-plugin for "index.html":
     1 asset
    Entrypoint undefined = index.html
    [../../buildin/global.js] (webpack)/buildin/global.js 489 bytes {0} [built]
    [../../buildin/module.js] (webpack)/buildin/module.js 497 bytes {0} [built]
        + 2 hidden modules

and https://github.com/webpack/webpack-sources/pull/38 fixes the wasm unknown size.

Did you add tests for your changes?
yes :+1:

If relevant, link to documentation update:

Summary

Does this PR introduce a breaking change?
no :+1:

Other information

Thanks


On Laravel 10 not work

I have PHP 8.1.9, there is no way to update to a new version of php

Hi, unfortunately this package has never offered support for PHP 8.1 in a stable branch. Your best bet is either upgrading your project to at least PHP 8.2 or maintaining your own fork.
Good luck!


关于页面右侧出现侧边栏外部链接（sidebar-Social Links）的问题

进入个人主页的时候，侧边栏里面的外部链接出现在主页右边边上，只能看见一点点。
当你点开展开侧边栏的按钮，在关闭侧边栏，上面出现的那个情况就没有了！在其他页面也同样有这个问题。
我没有修改HTML、CSS代码。

应该是这串代码，每个页面都有。是Hexo渲染的问题吗？
`

                  GitHub

            <a<EMAIL_ADDRESS>target="_blank" title="E-Mail">

                  E-Mail

                  Instagram

`

Can u explain in English?

@ivan-nginx Zhang21 means this,
When I open my homepage, I can see some links on the right side. And when open the right side bar, this bug will disappear.

@liszd live demo?

@ivan-nginx
http://www.zhang21.cn/ is zhang21 website.
https://blog.naaln.com/ is my webiste. It also has same problem.

@Zhang21 @liszd what version of NexT u use? Latest master branch or release version?

@ivan-nginx I forked the theme in liszd/hexo-theme-next and rebase with master branch 5858a19e57765d611e526f9fc4a7edfc3a307fe2

@liszd ok, this error appear only after this update? I see your commit 7 days ago, error was or not in that time?
And can u please temporarily disable all your custom styles and try to catch out this error again?

@ivan-nginx sorry, there is a little chaos on my commit.
Now I use the last master branch (just change the _config)  . This problem also appeared.
This error has appear several weeks.  I just solved with links-of-author in custom.sty at that time.
.links-of-author {
    display: block
}

I thought this bug only happen on me, until find Zhang21 has some problem.

@liszd .links-of-author was changed on flex style display when was added icons_only option.
But this bug is strange and i can't to catch him on my test site without any custom styles.

Fixed in #1846.
@liszd u can remove display: block from custom.styl after this update.

@Zhang21 if issue solved, close it please.

@liszd Sorry，I can't understand how to solve this problem according to your suggestions.

@Zhang21 他昨天晚上更新了，你使用他最新的代码就行了。

@liszd What mean about  use _data dir with next.yml？

@liszd Clone the new version of NexT？

@Zhang21 that say i, not him) I mean u can check this.

@ivan-nginx I see,think u

@ivan-nginx  @liszd
I update it，it works true on some browser（like edge and IE），but on chrome，it also has the problem. I try to disable cache, and still exist.

@Zhang21 just refresh with Ctrl+Shift+T. I tested it on Chrome always.

I use your method, it's also exist.
** the problem **

** then **

@Zhang21 try to install latest master branch version. It must be fixed, @liszd confirmed it.

The NexT  release is v5.1.2，the newest version.
@ivan-nginx The problem is also on chrome。
@liszd 哥子，你是怎么解决的？

@Zhang21 https://github.com/iissnan/hexo-theme-next#download-latest-master-branch

@liszd  我已经 git pull 过了，这个 download 下来有什么区别吗？除了配置文件那些。

@Zhang21 我不确定你是不是真的有更新代码
他具体的修复代码在这，你没有实质性的更新
https://github.com/iissnan/hexo-theme-next/commit/edad5e331f0f145690015d30cead635f337bac4f
https://github.com/iissnan/hexo-theme-next/commit/fa2d484edf3ba91b0c64c3dc353bbfb4380ef1f1

@liszd 我改了相对应的代码，Bingo，多谢了哥子！
@ivan-nginx Bingo！think u!


[Changelog] Update for Sprint 98, G-6, and H-B2

[skip ci]

@miq-bot add_label documentation

@AllenBW can you review.

@AllenBW can you also merge. :1st_place_medal:


Can't manually enter file paths

In 1.0.1, you could manually type in the path to the env file, but in 2.0.0 it requires a file dialog. However, in OSX's default file dialog, there's no way to select hidden files, and all dot-prefixed files are hidden, including .env.
This means I had to downgrade to 1.0.1 in order to select my .env files.

@birkholz thanks for the issue report! Do you have an idea what could be the best UI for manual entry?

I'm sure it's not the best way around but as a quick solution - I added some code that allows manual editing for paths in EnvFile table on double click.

Version 2.1.0 was release and pending review form JetBrains.

@Ashald Awesome, thanks for the quick fix. :+1:


429, to many requests, not being handled

Could possibly keep a running count and compare the time the first one was done? I suspect this will be a pain to do reliably.

This has rarely come up in a testing but I should display an error message at least... although I'd need to add a way of displaying alerts

At the moment it's very difficult to get this error and it causes other problems anyway... A better way would be to do this with promises and get say 1000 posts or all posts with a delay. (need to review the API) But I'm not going to do this right now.


Getting a status code 126 when running linter

/usr/local/bin/protoc-gen-lint: /usr/local/bin/protoc-gen-lint: cannot execute binary file
--lint_out: protoc-gen-lint: Plugin failed with status code 126.
I am trying to lint one protobuf file and it gives this error every time. I am using this command:
protoc --lint_out=. FILENAME.proto

Hm, thats interesting. Are you using a binary from one of the releases or building from source? Which os/arch are you on?

I'm using the latest release, and I'm on Mac OS

Do you have an M1 Mac by any chance? The last release doesn't include binaries for it but it will be supported in the next one which could go out at any time. I was just waiting for a response on #20. Alternately you can try building from source which should work fine for an M1.

I've changed the way I build releases and don't have an M1 mac to test on but https://github.com/ckaznocha/protoc-gen-lint/releases/download/v0.2.3/protoc-gen-lint_darwin_arm64.zip should work. Gonna close this, please let me know if it doesn't work and I'll re-open


Skip initial datastore reconcile during cluster-reset

Proposed Changes
Skip initial datastore reconcile during cluster-reset
Due to prior refactoring, there are no longer any other callers of cluster.Bootstrap, and the snapshot flag was unused. It does what we want when resetting/restoring though.
Types of Changes
bugfix
Verification
See linked issue
Testing

Linked Issues

https://github.com/k3s-io/k3s/issues/8497

User-Facing Change

Further Comments

arm and s390x are flaking; merging


Scrolling in DataGrid with arrow up ends in the title filter editor

Scrolling in DataGrid with arrow up ends in the title filter editor (in column header) instead in the first line of data. And it even does not allow to jump back into data rows using arrow down.
Please disable this scroll to column header (better) or at least allow going back to data row area using array down (worse, but still acceptable).

Focus handing is done by the System.Windows.Input.KeyboardNavigation class, not by DGX.
You can configure it to your needs.

I'm sorry, I don't know, how to use KeyboardNavigation to stop such behavior… KeyboardNavigation.SetDirectionalNavigation(????, ????) ?
Do you have an idea?

@lstauber https://github.com/tom-englert/DataGridExtensions/commit/c7d4177c1642cf355e7ec6929cb88ae4f8a375fc


add navigation links to shop and about in the footer sections

Respected sir (@iamehran ) please assign me this issue under hacktoberfest .

can i do this plz assign me

respected sir pls assign me this under hacktoberfest.


Test the new Feature Extraction Server for production readiness

The server must be tested for robustness in continuous operation. In particular, it must be tested to ensure that no memory leaks occur during continuous operation with continuous queries.

Closed!
Since the feature extraction server resides in a separate GitHub repository, it might be more sensible to track issues related to its implementation in that repository.


[Question] Regarding DEFAULT_LOW_WATER_MARK and DEFAULT_HIGH_WATER_MARK

Dear Netty experts,
Regarding io.netty.channel.WriteBufferWaterMark, we have default value for LOW_WATER_MARK and HIGH_WATER_MARK, could u please kindly let me know how we set the these two default value?

If I set it bigger, what's the side effect?

    private static final int DEFAULT_LOW_WATER_MARK = 32 * 1024;
    private static final int DEFAULT_HIGH_WATER_MARK = 64 * 1024;

BTW, can we use channel.unsafe().outboundBuffer() to monitor usage?
Refer: https://stackoverflow.com/questions/64930528/what-happens-to-writes-when-channeloutboundbuffer-is-full

Looking at the source for ChannelOutboundBuffer in 4.1.37, the method addMessage always adds incoming messages to an internal linked list, regardless of the state of isWritable. This list grows unbounded.

The total byte length of this buffer is reachable via channel.unsafe().outboundBuffer().totalPendingWriteBytes().

For an indirect value, if you don't want to use unsafe(), you can alternatively use channel.bytesBeforeWritable() which will return the queued bytes minus the low watermark.

Really appreciate ur great help in advance!
Thanks,
Roy

@RoySunnySean007 As you mentioned in the first question, if you set the water marks bigger, then more memory probably will be used in the buffer. So the program memory will more likely to reach the limit when the traffic is heavy.

Thx @huibinliupush and @needmorecode !


Make keep_trailing_newline configurable, add trim_blocks and lstrip_blocks options

Adding three new CLI flags which correspond to Jinja2's whitespace control options:

no-trailing-newline - Disable keep_trailing_newline since default is enabled
trim-blocks - Enable trim_blocks
lstrip-blocks - Enable lstrip_blocks

Are these options not able to be done through template syntax alone? I'm pretty sure the whitespace operators cover all of these cases. I'm trying not to expose every Jinja option through CLI config if you can get away with it purely in template syntax.

Ah yes something like below as the first line in the template should work based on searching around.
#jinja2: trim_blocks: "false", lstrip_blocks: "false", trailing-newline: "true"

I won't have time to test this for a while, so closing this PR. When I get back around to this, if it doesn't work I'll re-open.
Thanks.


[FLINK-18866][python] Support filter() operation for Python DataStrea…

What is the purpose of the change
Support filter() operation for Python DataStream API.
Brief change log

Add filter() interface for Python DataStream API
Add a new Function class named FilterFunction and a wrapper class for user defined filter function.

Verifying this change
This change has test case covered by test_filter_with_data_types and test_filter_without_data_types in test_data_stream.py
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): ( no)
The public API, i.e., is any changed class annotated with @Public(Evolving): ( no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not documented)

Hi @hequn8128, thank you for your comments, I will pay more attention to typos and shall never write codes in a hurry.


Add helm deploy

What type of PR is this?
/kind enhancement

What this PR does / why we need it:
Add helm charts for deployment
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

We should also remove the yamls in ./build/docker

Should we keep a way to deploy in kubernetes cluster without helm ?

/lgtm
/approve


Draper::UninferrableDecoratorError (Could not infer a decorator for Document.)

How can I infer a namespaced decorator? I got an error(which is expected) everytime I decorate Document model.
2.5.3 :010 >  Document.first.decorate.created_at
Draper::UninferrableDecoratorError (Could not infer a decorator for Document.)

# app/decorators/example_namespace/document_decorator.rb
module ExampleNamespace
   class DocumentDecorator < ::Draper::Decorator
      delegate_all

      def created_at
         object.strftime('%D %r')
      end
   end
end

# app/models/document.rb
class Document < ApplicationRecord
...
end

Did you had a look at #545 ?

If you use Spring, try:
spring stop
and restart your server/console

See: https://github.com/drapergem/draper/pull/899

How can I infer a namespaced decorator?

You can define it explicitly in your model:
class Document < ApplicationRecord
  def self.decorator_class(...) = ExampleNamespace::DocumentDecorator
end


Lumberyard not being detected (or being detected as CryEngine)

Some reference to the engine, such as the developer site or a wikipedia article.
Amazon developed a variant of CryEngine called Lumberyard:

https://aws.amazon.com/lumberyard/
https://en.wikipedia.org/wiki/Amazon_Lumberyard

SteamDB links
https://steamdb.info/app/1057240/
https://steamdb.info/app/1426320/
https://steamdb.info/app/583240/
Possible way to detect it
engine.json file contains which might be useful:
{
    "FileVersion": 1,
    "LumberyardVersion": "<IP_ADDRESS>",
    "LumberyardCopyrightYear": 2018
}

from #190
looking for bootstrap.cfg could be an idea but it seems like there's too many false positive

583241 - Coffence Content
613581 - The DRG Initiative Content
949521 - Lost On The Island Content
1057241 - Crucible Content
1063731 - Main Game Content
1129071 - Dedicated Server Content
1205551 - New World Public Test Realm
1368991 - Shatterline Content
1426321 - New World Alpha Content
1705021 - AimGoGoGo Content
1724661 - New World Open Beta Content
1937051 -
2087031 -
2089761 -

from #190 looking for bootstrap.cfg could be an idea but it seems like there's too many false positive

583241 - Coffence Content
613581 - The DRG Initiative Content
949521 - Lost On The Island Content
1057241 - Crucible Content
1063731 - Main Game Content
1129071 - Dedicated Server Content
1205551 - New World Public Test Realm
1368991 - Shatterline Content
1426321 - New World Alpha Content
1705021 - AimGoGoGo Content
1724661 - New World Open Beta Content
1937051 -
2087031 -
2089761 -

Had to google a lot but i am only not sure about 949521, all other games are Lumberyard since they are Amazon's or google says they're Lumberyard lmao


fix(windows): use join_paths to create new_path

Fixes the issue that hook_env tries to join paths with ':' on Windows.

@jdx fixed the code :sweat_smile:
The test will work now


NSString extension bug

This is a fix to issue #25 @vfn Mind having a quick look?
As a side note there are also some minor whitespace fixes.
Thanks!

@vfn if you think its good to go, would you mind merging this PR? 😄


Physics tests for channel or box models with analytic solutions

At some point we should implement the following tests suggested by @edoddridge in https://github.com/climate-machine/Oceananigans.jl/issues/81.

[ ] Munk gyre
[ ] Stommel gyre

Closing this as we have decided to go with the verification experiments outlined in https://github.com/climate-machine/Oceananigans.jl/issues/346.


Fixes for minimal env

Hmmm ... this build apparently failed due to pytest errors. Merging now, may need to debug later if it keeps occurring.


Is lfs_config need to be persisent?

Hello. Is it safe to free memory for struct lfs_config after lfs_mount() call?

Hi @blomnik, yes lfs_config needs to persist. littlefs depends on it after mount.
The reason for this is that lfs_config is immutable and can be stored in flash this way, rather than copying the config into RAM in the lfs_t struct.
This may change in the future. The configuration is something that I'd like to look at again, and the idea of enabling compile-time configuration has been floated by other developers. But if that happens a persistent lfs_config can still be provided without breaking backwards compatibility.

Oh, thank you for that fast repsonse. :)
Does it mean, that littlefs does not modify any field in struct lfs_config behind my back? So, this structure can be completly const?
Thank you.

Yep! lfs_mount/lfs_format take in a const*. The intention is for lfs_config to be stored in flash.
This doesn't do much if the configuration is calculated dynamically, such as in OSs, but it is a nice benefit for devices with very limited memory.


[FEATURE]: unit of work

Describe what you want
hi there
i recentely heared about this orm by my friends and they are very interested.
can i ask you how to implement unit of work by drizzel?
i mean doing update multiple repositories in order failling one of them roll back all
class UOW {
userRepo:UserRepository
orderRepo:OrderRepsitory
startTransaction(){}
commitTransaction(){}
rollback()

}

class Test {

 main(){
 this.uow.startTransaction(){
      const a = await this.uow.UserRepo.create()

      const d = await this.uow.orderRepo.delete()

      this.uow.commitTransaction()

      // whetever the two will executed or the tow will rollbacked

      }
}

i saw you are handling transactions as prisma is doing, by passing a function but i don't perfer this way.
i want to ask do you have any plane to add to support this kind of feature.
thanks

Closing in favor of #966.


fix: modify styles for status reason

Signed-off-by: liuying<EMAIL_ADDRESS>
What type of PR is this?
/kind bug

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for reviewers:

Does this PR introduced a user-facing change?

Additional documentation, usage docs, etc.:

Codecov Report

Merging #233 (e70480f) into master (2d45c2b) will not change coverage.
The diff coverage is n/a.


Fix for HDD size calculation, new poweroff processing mechanism, fixed PBUF allocation for Ethernet ARP request, new option for SMSTCPIP to save more RAM.

Pull Request checklist
Note: these are not necessarily requirements

[ ] I reformatted the code with clang-format
[x] I checked to make sure my submission worked
[x] I am the author of submission or have permission from the original author.

Pull Request description
45e99f0 - Fixed HDD partition size calculation. Originally, our HDD.IRX module used to return the partition size in bytes. Eventually, that got changed to fit the official documentation, which returns in 512-byte sectors.
8cadeb4 - Corrected bug in PBUF allocation for Ethernet ARP requests and changed the SMAP output function to always assume that outgoing PBUFs are always aligned (for performance). Previously, the outgoing PBUFs were occasionally unaligned because of this glitch.
4a9a5a7 - As of the recent PS2SDK commit, poweroff no longer automatically switches off DEV9 as a safety measure. OPL will now deinitialize the GUI before switching off DEV9, before finally switching off the PS2.
3513da6 - Our SMSTCPIP module is based on an ancient version of LWIP, which always uses its own memory heap allocator (even though SYSMEM can fill that requirement). This patch adds and enables a new option (MEM_LIBC_MALLOC), which functions like the official version from the newer versions of LWIP.

Sorry, but I can see a slight problem with one of the commits. I'll re-issue another pull request later on.


[BUG] macro not work properly after 1.3.4

Describe the bug
A clear and concise description of what the bug is.
When you split a file, the macro behaves strangely
Code to reproduce
Paste the relevant code which reproduces the error, or give detailed instructions on how to reproduce it.
input:
// test.ts
export function $m1() {
    return 1;
}

// index.ts
import { $m1 } from "./test";

const m1 = $m1!();
m1;

output:
// index.js
import { $m1 } from "../test";
const m1 = null;
m1;

Expected behavior
// index.js
import { $m1 } from "../test";
const m1 = 1;
m1;

Additional context
Add any other context about the problem here.
It should also be possible to duplicate the names of macros on a file-by-file basis
For example, if file1.ts has a macro named m1 and file2.ts has a macro named m1, you should be able to use the macro you want, depending on which one you import.
// file1.ts
export function $m1() {
    return 1;
}

// file2.ts
export function $m1() {
    return 2;
}

// index.ts
import { $m1 } from './file1';
import { $m1 as $m2 } from './file2';

const test = $m1!(); // it should be 1
const test = $m2!(); // it should be 2

Fixed!

Fixed!

Thank you very much. This transformer is now used for js-sdsl. I hope there's no fatal bug...

I'm confident everything's working, but if you encounter something I'll get it fixed asap :)!


Server: Vendors Yasgui instead of downloading it

Issue #847

@ludovicm67 @MarcAntoine-Arnaud This MR vendors Yasgui by using as submodule oxigraph/yasgui-release. oxigraph/yasgui-release has a CRON action that updates it automatically with the latest release.


How to check if a file is an image (server side)

The imghdr module determines the type of image contained in a file or byte stream.
>>> import imghdr
>>> imghdr.what('/tmp/bass')
'gif

Credits:
https://stackoverflow.com/questions/889333/how-to-check-if-a-file-is-a-valid-image-file#902779

it works ;)


Fake collections

I'm encountering a problem with a deep relation and I was wondering if it could be solved within neo4jrb scope.
Sometimes I have specific relations like this
(:Tutorial)<-[:TEACH|:USE]<-(:Technology)
(:Tutorial)<-[:INCLUDE]-(:Chapter)<-[:INCLUDE]-(:serie)

I was wondering if it was possible to declare a fake relation in the model
has_many :virtual, :technologies
has_one :virtual, :formation

Then we would be able to collect with a specific alias
    self
      .query_as(:t)
      .with(:t)
      .optional_match('rel = (t)-[r:TEACH|:REQUIRE]->(tech:Technology)')
      .with(:t, :tech, :r)
      .optional_match('(t)<-[:INCLUDE*]-(f:Formation)')
      .return('t, collect(tech) as technologies_collection, collect(r) as requirements, f as formation_collection')

The model would create automatically the accessors for the subcollections.
t # would return the Tutorial
t.technologies # Would return Technology collection
t.formation # Would return the Formation

I think that there are a lot of ways to go about this ;)
Firstly, you should know about the rel_length options (documented here)
as(:t).branch { technologies(:tech, :r) }.formation(:f, nil, rel_length: :any)
      .pluck(:t,
      technologies_collection: 'collect(tech)',
      requirements: 'collect(r)',
      formation_collection: 'f')

But, of course, you would need to define the associations.  The formations association should be pretty easy:
has_one :in, :formation, type: :INCLUDE

For technologies, it might be tricker because of the multiple relationships.  I don't remember if we ever implemented this:
has_many :out, :technologies, type: [:TEACH, :REQUIRE]

If that doesn't work you can probably hack it like this:
has_many :out, :technologies, type: "TEACH|:REQUIRE"

But maybe you're also wanting something higher level so that you don't need to do the collects.  For the technologies association you'd probably be fine because the gem auto-loads associations (though you can do it all with one query using with_associations), but the variable length relationship part won't, I don't think, play well with auto-loading because variable-length relationships are defined on query, not on the association.

Not 100% sure I understand the question, but to add to cheerfulstoic's response:
You can create a scopes on your Tutorial model such as
scope :formation, -> do
  query_as(:tutorial).
  match("(tutorial)<-[:INCLUDE]-(:Chapter)<-[:INCLUDE]-(serie)").
  proxy_as(Formation, :serie)
end

or
scope :technology, -> do
  query_as(:tutorial).
  match("(tutorial)<-[:TEACH|:USE]-(tech:Technology)").
  proxy_as(Technology, :tech)
end

And you could use it like Tutorial.technology or Tutorial.new.technology. This also supports chaining like Tutorial.new.technology.something_else. But something I don't think you can do is
tutorial = Tutorial.new
technology = Technology.new
tutorial.technology << technology

Also, it looks like your query could be cleaned up slightly like:
 self
      .query_as(:t)
      .optional_match('(t)-[r:TEACH|:REQUIRE]->(tech:Technology)')
      .break
      .optional_match('(t)<-[:INCLUDE*]-(f:Formation)')
      .return('t, collect(tech) as technologies_collection, collect(r) as requirements, f as formation_collection')

@cheerfulstoic would has_many :out, :technologies, type: "TEACH|:REQUIRE" break assignment? (i.e. model.technologies << technology)

@thefliik Yeah, good point.  Though even if the array syntax was supported, I don't know what we would do for assignment.  It might have to default to the first type specified in the array...  That alone makes me think that we didn't implement this feature.
Regarding scopes, it's a great point.  I would also mention that you can use class methods as well like:
def self.technology
  all.query_as(:tutorial).
  match("(tutorial)<-[:TEACH|:USE]-(tech:Technology)").
  proxy_as(Technology, :tech)
end

The assignment is not a problem since I handle this creating an ActiveRel (so it's not a problem if we loose the ability to do <<).
The problem with scope is that I end up returning a collection of Technoloy or Formation. The goal was to go around the autoloading, managing the loading of relation myself (adding some specificies on the relations).
A class method is my current solution, I get everything I want with one query and hydrate records accordingly (adding attr_accessor :technologies, :formation). The goal is to get as much as possible with one query.
  # This could be optimised but I didn't knew about break() at the time
  scope :listing, -> (limit) {
    self
      .query_as(:t)
      .with(:t)
      .optional_match('rel = (t)-[r:TEACH|:REQUIRE]->(tech:Technology)')
      .with(:t, :tech, :r)
      .optional_match('(t)<-[:INCLUDE*]-(f:Formation)')
      .return('t, collect(tech) as technologies, collect(r) as requirements, f as formation')
  }

We could also have the problem when adding a condition on a relation.
 self
      .query_as(:t)
      .optional_match('(t)-[r:TEACH|:REQUIRE]->(tech:Technology)')
      .where('r.version > 2')
      .break
      .optional_match('(t)<-[:INCLUDE*]-(f:Formation)')
      .return('t, collect(tech) as technologies_collection, collect(r) as requirements, f as formation_collection')

So you're basically trying to load a model with_associations() but you're finding that the with_associations() API is too limiting? Or are you not familiar with the with_associations() method? (It looks like your queries are too complex for with_associations() anyway, which is something I often run into myself.)
So it's still unclear to me how has_many :virtual, :technologies would improve things for you? Wouldn't that be functionally equivalent to adding the :technologies accessor? I guess I can think of one difference: that you could still chain with the virtual association. Is that the only limitation you're running into with your current method?

@thefliik I'm aware of with_associations() but the API is indeed too limiting for complex queries where you would want to choose how to hydrate a relation. The has_many is a way to tell the model to look for a field "XXXX_collection" when returning things. But I think I am doing things the wrong way and I shouldn't rely too much on an ORM for these specific use cases where I return collections of data.

I think the contributing file explains it all. If I remember correctly, it's not really any different than setting up a rails app (which might not be a helpful analogy, if you don't use rails).
This being said, I think the rel_length bit was 99% implemented by #1485. I think all you'd need to do is whitelist rel_length as a new configuration option.

:+1: on the CONTRIBUTING.md.  Feel free to drop by the Gitter channel if you need help.


use with router flux

How can I use this lib with router-flux like this
<Router
<Scene
....

Hi, it's been ages since I've used router-flux. Please try and comment here, or give me an example to debug

Closed due to inactivity (no pun intended)


Fixed index out of range panic

What's in this PR?
Fix for panic in ff1 that occurred when encrypting certain numeric strings (which ones depend on the given tweak). It may also have been an issue for other types of strings, but that has not been checked.
The fix has been verified for all 9-digit numbers (000000001-999999999).
Housekeeping Items

[x] Did you accept and sign the Contributor License Agreement
I agree.
[x] Do you agree to the Open Source Code of Conduct?
I agree.

@hakonra The Travis CI builds aren't getting triggered but I ran go test github.com/Videxio/fpe/ff1 and all unit test cases are failing, which does make sense given the change introduced here.
Can you please provide some combinations of inputs/tweaks that reproduce this issue?

You can try to run the program below (it is what I wrote to verify).
It should panic very quickly without the fix, and with the fix I managed to run the entire test without errors. It also verifies that all expected numbers are indeed generated.
package main

import (
	"github.com/capitalone/fpe/ff1"

	"fmt"
	"strconv"
	"sync"
	"time"
)

const (
	MIN = 1
	MAX = 999999999
)

func main() {
	key := []byte{0x4, 0x8, 0x15, 0x16, 0x23, 0x42, 0x4, 0x8, 0x15, 0x16, 0x23, 0x42, 0x4, 0x8, 0x15, 0x16, 0x23, 0x42, 0x4, 0x8, 0x15, 0x16, 0x23, 0x42}
	tweak := []byte{0x42}

	bitmapMutex := sync.Mutex{}
	bitmapLen := (MAX + 1) / 8
	if (MAX+1)%8 > 0 {
		bitmapLen++
	}
	fmt.Printf("[%s] Allocating bitmap of size %d bytes...\n", time.Now().String(), bitmapLen)
	bitmap := make([]byte, bitmapLen)

	workers := []uint32{250000000, 500000000, 750000000, MAX}
	wg := sync.WaitGroup{}
	wg.Add(len(workers))

	fmt.Printf("[%s] Starting %d workers...\n", time.Now().String(), len(workers))
	for gr := 0; gr < len(workers); gr++ {
		min := uint32(MIN)
		if gr > 0 {
			min = workers[gr-1] + 1
		}
		max := workers[gr]

		go func(gr int) {
			cipher, err := ff1.NewCipher(10, 8, key, tweak)
			if err != nil {
				fmt.Printf("[CRITICAL] ff1.NewCipher(): %s\n", err.Error())
				return
			}

			var i uint32
			percent := 0
			perCalc := float64(max-min+1) / 100.0
			for i = min; i <= max; i++ {
				if int(float64(i-min)/perCalc) > percent {
					percent++
					fmt.Printf("[%s -- worker %d] %d%%\n", time.Now().String(), gr, percent)
				}

				ciphertext, err := cipher.Encrypt(fmt.Sprintf("%09d", i))
				if err != nil {
					fmt.Println(err.Error())
				} else {
					c, err := strconv.Atoi(ciphertext)
					if err != nil {
						fmt.Printf("strconv.Atoi(): %s\n", err.Error())
						continue
					}

					bitmapMutex.Lock()
					if get(bitmap, c) {
						bitmapMutex.Unlock()
						fmt.Printf("[%s -- worker %d] Two equal:  %d -> %s  ==  ? -> %s\n", time.Now().String(), gr, i, ciphertext, ciphertext)
					} else {
						set(bitmap, c)
						bitmapMutex.Unlock()
					}
				}
			}

			wg.Done()
			fmt.Printf("[%s -- worker %d] Finished!\n", time.Now().String(), gr)
		}(gr)
	}

	wg.Wait()

	fmt.Printf("\n[%s] main verifying...\n", time.Now().String())
	matches := 0
	for i := 0; i <= MAX; i++ {
		if get(bitmap, int(i)) {
			matches++
		}
	}

	total := int(MAX - MIN + 1)

	if matches == total {
		fmt.Printf("GREAT SUCCESS!\n\n")
	} else {
		fmt.Printf("Generated %d numbers of %d total :(\n\n", matches, total)
	}
}

func get(bitmap []byte, key int) bool {
	return (bitmap[key/8]&getMask(key%8) > 0)
}

func set(bitmap []byte, key int) {
	bitmap[key/8] |= getMask(key % 8)
}

func getMask(mod int) byte {
	switch mod {
	case 0:
		return 0x01 // 00000001
	case 1:
		return 0x02 // 00000010
	case 2:
		return 0x04 // 00000100
	case 3:
		return 0x08 // 00001000
	case 4:
		return 0x10 // 00010000
	case 5:
		return 0x20 // 00100000
	case 6:
		return 0x40 // 01000000
	case 7:
		return 0x80 // 10000000
	default:
		panic(fmt.Sprintf("shit: %d", mod))
	}
}

After some investigation, it turns out this is actually an issue with plaintext strings that have enough trailing zeros, such that numB.Bytes() just returns an empty slice.
Will push a fix that doesn't break existing test vectors / unit tests.

@hakonra the fix has been merged via #11 . Re-ran your test program and it no longer panics.
Thanks for raising this issue!


Refactor mesh utilities to reduce dependence on Inlet

To allow greater flexibility when using the C++ API instead of Inlet/Lua for simulation configuration, this PR intends to further separate Inlet deserialization and mesh instantiation logic.
Instead of having to pass an MPI communicator and refinement parameters to each mesh creation function, the common refinement/parallelizing logic is moved to a new serac::mesh::finalize function that accepts a serial mesh.  The individual generation functions are now only responsible for generating a serial mesh.
A new serac::mesh::build function will construct a complete ParMesh from a set of input options, meaning that some of the variant examining/accessing is kept out of user-facing code.
The work done in this PR exposed a bug in which refinement parameters for generated meshes are ignored, which was also fixed.
I'm not sure how superfluous the refinement logic is for the generated meshes, but because the InputOptions structure/corresponding input file schema still include it, I thought it made sense to include the matching logic.

Is this ready to go or is it waiting on stuff?

I think this is probably a good starting point, though I'd like to make the other generated meshes (ball, disk, etc) available through Inlet and through this new approach in a future PR.

@jonwong12 @samuelpmishLLNL could you take a look at this?

LGTM

Codecov Report

Merging #398 (6ad8961) into develop (9fad67a) will decrease coverage by 0.01%.
The diff coverage is 96.87%.

@@             Coverage Diff             @@
##           develop     #398      +/-   ##
===========================================
- Coverage    92.42%   92.41%   -0.02%
===========================================
  Files           48       48
  Lines         2272     2281       +9
===========================================
+ Hits          2100     2108       +8
- Misses         172      173       +1

Impacted Files
Coverage Δ

src/serac/numerics/mesh_utils.hpp
75.00% <0.00%> (-25.00%)
:arrow_down:

src/drivers/serac.cpp
90.62% <100.00%> (ø)

src/serac/numerics/mesh_utils.cpp
95.69% <100.00%> (+0.17%)
:arrow_up:

Continue to review full report at Codecov.

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

LGTM

LGTM


How can I change the values of a VectorCoefficient ?

Hello !
I'm using a GradientGridFunctionCoefficient to solve a linear system.
I have a Grid that I denote A. I get the gradient of A in the following way :
GradientGridFunctionCoefficient  Grad_A (&A).
I would like to be able to change values of the VectorCoefficient Grad_A before using it for the resolution of my system. Is it possible ?

Hi, @LeilaSalomon ,
There are many possibilities depending on what types of changes the values need.  In MFEM Coefficient and VectorCoefficient classes don't typically precompute the values they return.  Instead they just contain instructions on how to compute those values.  In the case of the GradientGridFunctionCoefficient it only knows how to extract the gradient from A and return it. If the GridFunction, A, changes its values during the course of a simulation the values returned by GradientGridFunctionCoefficient will automatically change the next time this VectorCoefficient is used.
It's also possible to write a custom VectorCoefficient which performs some sort of operation on the values returned by Grad_A before returning the altered values.  I'm not sure if this is the type of change you had in mind but we could go into more detail if that would help.
Another possibility is to compute the gradient of A as a separate GridFunction whose values can be reused, or perhaps manipulated, if that's what you had in mind.
Best wishes,
Mark


MINOR: Replace String literal with existing String variable

It is minor change.
I found out that String literal is used even though there is existing static String variable.
So, I replaced literal with variable.
Thank you :)
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Thanks for your kind reply :)
I am a newbie to Kafka and learning the concept and code through unit tests. I am happy to commit for the first time 😄.


Multiple Domain, first bootstrap login error unauthorized

Expected Behavior
Succesful login and start bootstrapping
Actual Behavior

Steps to Reproduce
G Suite Primary domain = geekycloud.com
G Suite Secondary domain = digitallyinfinite.com
GCP domain = geekycloud.com
Parent OU = geekycloud.com

SUPERADMINS_GROUP =<EMAIL_ADDRESS>group member<EMAIL_ADDRESS>(superadmin)
web access with<EMAIL_ADDRESS>

The error seems to be solved by adding multiple domains in constant.py

And login with another admin account<EMAIL_ADDRESS>is successful, but not with the second domain login.
But, my question is, is there any way to get other email accounts with the secondary domain to log in?

It should work assuming you have an array of domains (like in your second comment). What error are you hitting? The biggest requirement is they must be a part of the exact same GSuite account.

They are part of the same GSuite account.
Strangely, I am able to login with the secondary domain now after redeploying the apps. Thanks!

Great to hear. FWIW, it's possible you missed promoting a given version in App Engine or it cached/indexed an old value. I'll close this since you resolved. Thanks!


Isolate a problematic change to ReferenceConfidenceModel for further discussion

I've extracted this change to ReferenceConfidenceModel from the now-closed PR
https://github.com/broadinstitute/gatk-protected/pull/1022, since it causes HaplotypeCaller tests
to fail spectacularly (including concordance tests against GATK3), so that we can
unblock the badly-needed merge of https://github.com/broadinstitute/gatk-protected/pull/1027
Let's review and test this change in isolation to be sure we understand it fully
before accepting it into master.

@samuelklee and @ronlevine, since you two were associated with the original branch this proposed change came from, please weigh in here, including an explanation of:

exactly what this patch does
why it's needed
why it changes test results so much
what the consequences are of running off of the latest gatk public without this patch

I had to isolate this particular change from the others in order to be able to update protected to the latest public snapshot and unblock our work.

This patch is part of port of a bug fix that resolved https://github.com/broadinstitute/gsa-unstable/issues/1345.  See discussion of original bug and details there.
This bug fix was included in GATK 3.7.  Tests against results generated by previous version of GATK 3 will fail because merging of hom-ref blocks by GQ band was performed incorrectly in those versions.  Without this patch, many hom-ref blocks that appear to be in the same GQ band (but are in fact not, due to rounding peculiarities) will remain unmerged.
A proper, complete port of the bug fix should encompass https://github.com/broadinstitute/gsa-unstable/pull/1431, https://github.com/broadinstitute/gsa-unstable/pull/1440, and https://github.com/broadinstitute/gsa-unstable/pull/1451 and would close #602.  Currently, various portions and iterations of the bug fix have been ported in both merged PRs (https://github.com/broadinstitute/gatk/pull/2619, https://github.com/broadinstitute/gatk/pull/2659, and https://github.com/broadinstitute/gatk-protected/pull/1027) and unmerged PRs (https://github.com/broadinstitute/gatk-protected/pull/1022 and the current PR).

Ok, thanks for the explanation! So I take it that we still don't have the complete fix? What's missing, exactly, once this branch goes in? I found that we had to do an additional fix in public (https://github.com/broadinstitute/gatk/pull/2681) to get protected to stop blowing up over high GQs.
One nice feature of our artifactory is that it contains snapshots for every commit of every branch of gatk public that runs through travis -- so it would have been possible to craft complete, passing branches in both public and protected for this fix in advance, without having to first merge a partial fix into public/master and put us into this intermediate state where protected is not yet passing tests.

What's missing: https://github.com/broadinstitute/gsa-unstable/pull/1451.

Closing -- this has been moved to https://github.com/broadinstitute/gatk as https://github.com/broadinstitute/gatk/pull/2807


Update quicksight configuration

Description
Updates quicksight configuration to load via Pydantic from the PALACE_QUICKSIGHT_AUTHORIZED_ARNS environment variable. Previously it was loaded from QUICKSIGHT_AUTHORIZED_ARNS.
🚨 This one can't get merged until there is a hosting playbook PR to update the env variable name.
Motivation and Context
Two reasons:

Trying to move all our env vars to be prefixed with PALACE_
Trying to make sure all our config is loaded via Pydantic settings classes

How Has This Been Tested?

Running tests in CI.

Checklist

[X] I have updated the documentation accordingly.
[X] All new and existing tests passed.

Requested your review on this one @dbernstein since you have the most background on this config.


Add asset_label

It appears that the API to upload a release asset supports associating a label with the asset.
It would be neat to add an asset_label input to this action to allow setting this label.

It would be nice to have indeed !


COMP: Address empty tuple passed for arguments

For:
def check_pointset(pointset):

  if '.txt' in str(pointset[0]) or '.vtk' in str(pointset[0]):

E       IndexError: tuple index out of range

Was not based on an updated main


Fix TypeScript syntax error in automerge-wasm definitions

I'm not sure if there are some configurations under which this works,
but I get
index.d.ts:2:21 - error TS1005: ';' expected.

2 export default from "automerge-types"
                      ~~~~~~~~~~~~~~~~~

both in my project that depends on automerge-wasm and when I run tsc
in this repo.
It seems like export default from is still a Stage 1 proposal, so I
wouldn't expect it to be supported by TS, although I couldn't really
find hard evidence one way or the other. It does seem like this syntax
should be exactly equivalent based on the proposal doc though.

Doesn't the change proposed though export the old default export as a property export named 'default'?   If so this is incorrect.

Im somewhat new to typescript.  Im happy to take pointers on how to do this correctly.

Yeah this aspect was a bit surprising to me too—it seems like the name default is actually special-cased? Check out this part of the export default from proposal: https://github.com/tc39/proposal-export-default-from#common-concerns


add license to source distribution

PyPA recommends to include license to sdist. https://github.com/pypa/sampleproject/blob/master/MANIFEST.in
Fixes #3966

LGTM!


Timedout Queues

Setting numWorkers to 100, and running tasks until they timeout, appears to be not releasing queues. I haven't isolated code to prove yet, but I wanted to ask for more detail about how timeouts are intended to be used.
Is the above by design, should I be manually timing out my tasks and resolving like the guide example does, or is this a bug?

For example, the first 100 tasks appear to be taken and timedout, but nothing after that first 100 is picked up by a queue

100 workers is a large number of tasks to be processed in parallel in a single node process for most tasks (unless they're highly async). First off, I'd suggest lowering the number of workers per process, and try running multiple node processes, or spawning child processes to do the processing.
Let me know if you still have issues after trying that - you might simply be trying to do too much on a single CPU

the 1.6.1 release fixed a bug in timeouts that could be related to some of these symptoms. Can you check out the new release and report back if things still don't work as you expect


JSON Communication

Right now, we need to make everything communicate using JSON - it is actually pretty messed up right now.
On the server, we use a mix of ctx.json and ctx.result
And even within ctx.json, sometimes we are sending a string, and sometimes JSON object
On the client, we use JSON.parse() and result => result.json(), while we should not use JSON.parse at all
We need to standardize this

@steffen12 i already changed all of this with the refactor- we should only use ctx.result(string) and the front end should never use JSON.parse

you have old versions of the code


Feature/metrics additions

These changes add:

QoS level tracking for playback that can be wired up to any player
Prescriptive page-level tracking to facilitate correlating page analytics across multiple apps

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: michielvandergeest:x: LaCivita, JeremyLaCivita, Jeremy seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: michielvandergeest:x: LaCivita, JeremyLaCivita, Jeremy seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Going with @michielvandergeest 's approach in https://github.com/rdkcentral/Lightning-SDK/commit/2846dd7e6663a4b0232c79bada0014a4a051b22b

Going with @michielvandergeest 's approach in https://github.com/rdkcentral/Lightning-SDK/commit/2846dd7e6663a4b0232c79bada0014a4a051b22b


ordinary svdd

Do you have implement ordinary svdd or somewhere implement it?

Code for the vanilla SVDD for both, primal and dual formulation, are available (svdd_dual_qp.py and svdd_primal_sgd.py).


Investigate orphaned records

Keys with the (undocumented) key prefix: 00 00 00 00 32  appear to contain deleted data records sometimes.
Need to look at how the records can be recovered (when they are records, because they aren't always).

Related to scopes: https://github.com/chromium/chromium/tree/master/components/services/storage/indexed_db/scopes
See: ScopesEncoder::UndoTaskKeyPrefix

Some of this functionality is in the library's back-end now, but we're not currently doing anything with it as I'm still not sure about the best (and safest) way to exploit it.


Adding Cauchy

This is a tiny one. Figured I'd make a PR just to get your opinions on whether we should do \mathcal{C} or \distNamed{Cauchy} or something else for a Cauchy distribution. I went with \distNamed{Cauchy} but do not feel strongly at all. Only benefit to that is that you avoid having to define the symbol; it's clear what \distNamed{Cauchy} is w/o defn.

I agree with \distNamed{Cauchy}


check if dividends were given while holding a stock

use "Historical Dividends" FMP call

To check if the historical price is dividend adjusted


Always fetch authentication tokens in Kerberos granted UGI

CC @mridulm @bikassaha

I am not sure if we can assume we will always have principal/keytab.
@bikassaha any comments ?

If not, then I don't know there's a way to address it.

@jerryshao I am trying to find a workaround ... if that does not work, we will go with this as fallback

@mridulm I think the keypoint is to get a UGI with only tgt granted, so HBase client will honor this tgt to get new tokens.

Let me merge this PR first, @weiqingy you need to change the code of #120  based on this.

@jerryshao I just reverted the PR, but we can always merge it in after #120 is in and the comments are resolved.

Sure, thanks.

Hi, @jerryshao PR#120 is merged. Could you please commit the PR again? Thanks.

Will do it. Currently stuck on the some Spark issues, will do it after that.


syntax highlight for .js.liquid and .scss.liquid

@GingerBear have you been able to solved this ?

@walidmahade no, I can only manually set file to be javascript file.


suppress any default headers when sent with no value

http localhost:8080 Accept:

Should make a request that does not have an Accept header at all.
Curl currently behaves this way:
➥ curl -v -H 'Accept:' localhost:8080/
*   Trying ::1...
* Connected to localhost (::1) port 8080 (#0)
> GET / HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.43.0
>

vs.
➥ curl -v localhost:8080/
*   Trying ::1...
* Connected to localhost (::1) port 8080 (#0)
> GET / HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.43.0
> Accept: */*
>

:+1: for this!
Currently, I have to keep the session file open and manually delete the header if I need a specific header removed for the next request in the session.


Completing translation

Oh, got it!! I just didn't understand it when I read it so I assumed it was a mistake haha :) Happy to know it was on purpose!!

I suppose only German people or people having lived in Germany (it was my case at the time) would understand it, well probably not a good idea :D
Thanks !


Chore/complete consensus mmr stroage

@yangby-cryptape I updated a new testdata for making test cases here available, and also changed some code logic

I clicked "Approve" due to avoid blocking the process of development; but I reserve my opinion.

I suggest you check or rewrite it later on if you really find errors in there, cause what I made is only a modification on the base you created.


ValueError: unsupported device mps | Trying to run my faster-whisper application using "mps" on my M2 Mac

So faster-whisper is built using CTranslate2 and checking the CTranslate2 github, they say:

"Multiple CPU architectures support
The project supports x86-64 and AArch64/ARM64 processors and integrates multiple backends that are optimized for these platforms: Intel MKL, oneDNN, OpenBLAS, Ruy, and Apple Accelerate."

Source: https://github.com/OpenNMT/CTranslate2
Which lead me to believe I would be able to use my MPS device with faster-whisper, but unfortunately when I tried it gave me this error:
Traceback (most recent call last):
  File "/Users/jack/Desktop/landoff_faster/app.py", line 14, in <module>
    model = WhisperModel(model_size, device="mps", compute_type="float32")
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/faster_whisper/transcribe.py", line 145, in __init__
    self.model = ctranslate2.models.Whisper(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: unsupported device mps

I did set it to cpu though, and it did work, but I don't think that is using the GPU cores for more efficient and faster inference.
I guess I would just like to know if there is any native support for using faster-whisper on Macs, and also I'd love to know what I can expect when running faster-whisper on my iPhone 14 Pro Max when I'm deploying my application. Will it efficently use the A16 Bionic chip inside of it via Apple Accelerate?
Maybe I have it wrong, and Apple Accelerate is merely for the CPU and doesn't affect the ARM based M-Chips in A-Chips. Then if that's the case, does anyone know how I can get inference working with the Apple Neural Engine or CoreML?
Any help is appreciated.
Cheers,
Jack

When looking into transcribe.py (get_device(), line 145) of faster-whisper, it might help to set device to 'auto'.
https://github.com/SYSTRAN/faster-whisper/blob/master/faster_whisper/transcribe.py

So faster-whisper is built using CTranslate2 and checking the CTranslate2 github, they say:

"Multiple CPU architectures support

The project supports x86-64 and AArch64/ARM64 processors and integrates multiple backends that are optimized for these platforms: Intel MKL, oneDNN, OpenBLAS, Ruy, and Apple Accelerate."
Source: https://github.com/OpenNMT/CTranslate2
Which lead me to believe I would be able to use my MPS device with faster-whisper, but unfortunately when I tried it gave me this error:

Traceback (most recent call last):

  File "/Users/jack/Desktop/landoff_faster/app.py", line 14, in <module>

    model = WhisperModel(model_size, device="mps", compute_type="float32")

            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/faster_whisper/transcribe.py", line 145, in __init__

    self.model = ctranslate2.models.Whisper(

                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^

ValueError: unsupported device mps

I did set it to cpu though, and it did work, but I don't think that is using the GPU cores for more efficient and faster inference.
I guess I would just like to know if there is any native support for using faster-whisper on Macs, and also I'd love to know what I can expect when running faster-whisper on my iPhone 14 Pro Max when I'm deploying my application. Will it efficently use the A16 Bionic chip inside of it via Apple Accelerate?
Maybe I have it wrong, and Apple Accelerate is merely for the CPU and doesn't affect the ARM based M-Chips in A-Chips. Then if that's the case, does anyone know how I can get inference working with the Apple Neural Engine or CoreML?
Any help is appreciated.
Cheers,
Jack

I be able to work on getting support, but I do not own a Mac so if you're willing to commit hours of benchmarking and testing to make sure my code is correct, I would devote the time. I'm not trying to exaggerate. I'm just emphasizing that the change would require multiple hours of benchmarking and testing.

I'm willing to commit a couple hours of benchmarking
As long as I'm given a checklist lol
I have a m1 pro 16gb ram 2021

hi, were you able to run faster whisper on mac?

I'm willing to commit a couple hours of benchmarking
As long as I'm given a checklist lol
I have a m1 pro 16gb ram 2021

I can commit some time to benchmarking if this hasb't been completed yet.

I tried to run a project with faster whisper as dependency on an m3 macbook. It failed with device mps, while it worked (slowly) with device cpu.


Add note and block relative

Closes #30 by adding new note construct and BLOCK_RELATIVE tag type.
Added note and BLOCK_RELATIVE to tests, which are passing.
Also updated owner to @cartermak instead of Chris, since Chris is gone, and version.

How about REQUEST_RELATIVE? request and ground activity allow steps with time relation relative to the START_TIME of the request. Similar to BLOCK_RELATIVE.

@tloreilly56 does BLOCK_RELATIVE have a different existing meaning? The intent is for BLOCK_RELATIVE to be a generalization of SASF FROM_REQUEST_START.

I assume BLOCK_RELATIVE is equivalent to FROM_ACTIVITY_START, which is the start of the ground block. FROM_REQUEST_START is relative to the start of the request. Suppose in a request  you have two ground activities and the steps within each activity have references to FROM_ACTIVITY_START. The relative time of FROM_ACTIVITY_START is different within each activity, each relative to the start of the two ground blocks in the expansion.

Aha, thank you. As I understand, SeqJSON doesn't support activities, so a SeqJSON request may only have a flat list of steps and that wouldn't apply unless we added activities. So maybe the question is, do we ever need SeqJSON to support activity expansion? I'm inclined to say no, but maybe it should?

@cartermak got it. If activity is not going to be supported in seq.json, we don't need to support a time type relative to the activity. For request, we need a time type relative to request start. Naming it REQUEST_START may be less confusing and have BLOCK_START available for later when activity is supported.

@tloreilly56 Why not use BLOCK_RELATIVE for request now and also be able to use it for activity later if we need to? I don't think we would ever be in a context where are activities and requests, so BLOCK_RELATIVE can mean the start of the request if it's in a request, the start of an activity if it's in an activity, and the start of a sequence if it's in a sequence but not inside a request (like satf). Agree with Carter that I don't expect us to ever support activity block types in seq json, though.

I understand we never expect to support activity block in seq.json. However, a request in seq.json can have a ground_block step which refers to a ground activity outside seq.json. That ground activity can have FROM_ACTIVITY_START or FROM_REQUEST_START time tag in the steps. I think using BLOCK_RELATIVE for steps in requests to refer to the start of the request is confusing.

@tloreilly56 The idea is that we can use BLOCK_RELATIVE as a general time tag to capture any time of time tag where the step should be issued relative to its container. The container could be an activity, a request, a sequence, etc. but BLOCK_RELATIVE can be used the same way in each case. In other words, how BLOCK_RELATIVE is used will depend on the context in which it is used. The issue is that if we use REQUEST_RELATIVE, then REQUEST_RELATIVE can only be a valid time tag within request types, and trying to enforce that REQUEST_RELATIVE can only be used for steps inside requests is going to complicate the schema. So we're trying to use a generalized time tag that for now is only going to be used for FROM_REQUEST_START but later could be used for other, similar types of time tags that may come up.
Does that make sense?

@shaheerk94 what I was trying to point out is in a ground block you could have a time tag relative to start of the block (BLOCK_RELATIVE) or relative to the start of the request (REQUEST_RELATIVE) that calls the block. Yes, in the request, you could use BLOCK_RELATIVE to represent the start of the request. I just think user might find it confusing using the term BLOCK_RELATIVE to represent relative to the start of request.

Attendees
@shaheerk94
@parkerabercrombie
@dandelany
@tloreilly56
@cartermak
Minutes

In SEQ 2.0, we aren't carrying forward all existing terminology. SEQ 2.0 doesn't have a meaning to "block" outside VML, so here it could mean just a chunk of commands - sequence, request, ground block, etc.
SeqJSON doesn't support definition of ground blocks, but you can call a ground block. So there could be ambiguity in the event of nested blocks where the "block" from which start time is being referenced is unclear.
A ground block definition (from outside SeqJSON) can have a time tag which means something different than what we're proposing it means in SeqJSON. That time tag in SATF would be FROM_ACTIVITY_START, which is colloquially understood to mean "from the start of this block".
We don't need to preserve terminology from legacy formats necessarily.
We aren't changing the existing understanding of "block relative", we're just extending it to apply to requests.
Seqgen does have an existing meaning of "block", and it doesn't include requests. So this does constitute more of a breaking change in the Seqgen context, even if the term isn't well-established in SeqJSON.
Takeaway: disagreement is purely with overloading "block". Group is in agreement that we can have a time tag which means "relative to the start of this execution context", be it request, sequence, block, etc. We want something like "container relative", although it would be nice to have an initialism that's distinct from our existing time types (A, C, E, R). Other ideas: parent-relative, batch-relative, nested-relative, scope-relative, local-relative. "Parent" could be mis-interpreted as referencing the calling entity (e.g., parent sequence). D, T, P prefer "scope-relative", but leaving the door open to other suggestions.
Next steps: mull over exact terminology, then update PR and request PMC approval.
Side Q: What is a block? Both requests and blocks can contain logic and commands, but requests are higher-level than blocks.
Side Q: How to time request steps relative to a specific epoch? Currently, we can only do this in SeqJSON when timing the request start. Some users may want to define the values for epochs in their sequence files too (heritage from SASF).

Some examples to describe the time type behavior - @shaheerk94 confirm that these match your expectation.
This first example shows how multiple block-relative steps in an absolute-timed request would be evaluated:
{
    "id": "example",
    "metadata": {},
    "requests": [
        {
            "description": "This is a request",
            "name": "test_request_1",
            "steps": [
                {
                    "description": "This command executes 10s after the request start at 2020-001T00:00:10",
                    "args": [],
                    "time": {
                        "type": "BLOCK_RELATIVE",
                        "tag": "00:00:10"
                    },
                    "stem": "CMD_NO_OP",
                    "type": "command"
                },
                {
                    "description": "This note is evaluated 20s after the request start at 2020-001T00:00:10",
                    "string_arg": "Note Test.",
                    "time": {
                        "type": "BLOCK_RELATIVE",
                        "tag": "00:00:20"
                    },
                    "type": "note"
                },
                {
                    "description": "This command executes 30s after the request start at 2020-001T00:00:30",
                    "args": [],
                    "time": {
                        "type": "BLOCK_RELATIVE",
                        "tag": "00:00:30"
                    },
                    "stem": "CMD_NO_OP",
                    "type": "command"
                }
            ],
            "time": {
                "tag": "2020-001T00:00:00",
                "type": "ABSOLUTE"
            },
            "type": "request"
        }
    ]
}

This second example shows how the timing of these sequence steps would depend on modeling context of the sequence (I'm not sure there's any heritage for this pattern, but one could imagine the modeling software resolving these times to, e.g., absolute time tags for commands):
{
    "id": "mixed time types",
    "metadata": {},
    "steps": [
        {
            "description": "This command executes at 2020-001T00:00:00",
            "args": [],
            "time": {
                "type": "ABSOLUTE",
                "tag": "2020-001T00:00:00"
            },
            "stem": "CMD_NO_OP",
            "type": "command"
        },
        {
            "description": "This command executes 10s after the sequence start",
            "args": [],
            "time": {
                "type": "BLOCK_RELATIVE",
                "tag": "00:00:10"
            },
            "stem": "CMD_NO_OP",
            "type": "command"
        },
        {
            "description": "This command executes after the previous command completes",
            "args": [],
            "time": {
                "type": "COMMAND_COMPLETE"
            },
            "stem": "CMD_NO_OP",
            "type": "command"
        },
        {
            "description": "This command executes 30s after the previous command start",
            "args": [],
            "time": {
                "type": "COMMAND_RELATIVE",
                "tag": "00:00:30"
            },
            "stem": "CMD_NO_OP",
            "type": "command"
        },
        {
            "description": "This command executes 1h after the sequence start",
            "args": [],
            "time": {
                "type": "BLOCK_RELATIVE",
                "tag": "01:00:00"
            },
            "stem": "CMD_NO_OP",
            "type": "command"
        }
    ]
}


Format company contacts

What Changed

Reformat addresses
Add pagination to lengthy search results
Make search fields sortable by clicking on table headers

Issues

Fixes #12 (Format addresses in a table)
Fixes #16 (Make search fields sortable)
Fixes #19 (Add pagination for search results)

Screencap

There is a weird bug where you can end up with a bunch of duplicate contact info, looking into it now

Turns out it's not a bug, that particular contact just has three distinct fax numbers. Fixing it to only look at the columns we are pulling instead of everything

looks good to me!

Woot sortable things LGTM :+1:


[docs][material-ui] Update MD callout

Should we wait for the announcement so everything is aligned?

Let's wait.

@aarongarciah I think we can reopen this one to go out with the 2024 EOY announcement.

@DiegoAndai ready to review


Multiple cars using one charger

Would it be possible to support two or more cars using one charger? In my case I have two EVs using the same home charger. A possible  solution would be during setup to add two (or more) cars and then to have a switch in the UI to switch between which car is connected, this switch can then be automated using the cars location, "charging port open", "cable connected" etc to automatically determine which car is connected.
On a side note, thank you for this excellent integration, very good :)

I am using this integration with two cars that share on charger. Since both of my a cars are "dumb" (not connected to Home Assistant) I have made a input_select helper with two options. One for each car. Then I have made a automation in Node-RED that enables or disable the correct instance of this integration.
And it works like just perfect!


[MINOR] Remove inappropriate type notation and extra anonymous closure within functional transformations

What changes were proposed in this pull request?
This PR removes

Inappropriate type notations
For example, from
words.foreachRDD { (rdd: RDD[String], time: Time) =>
...

to
words.foreachRDD { (rdd, time) =>
...

Extra anonymous closure within functional transformations.
For example,
.map(item => {
  ...
})

which can be just simply as below:
.map { item =>
  ...
}

and corrects some obvious style nits.
How was this patch tested?
This was tested after adding rules in scalastyle-config.xml, which ended up with not finding all perfectly.
The rules applied were below:

For the first correction,

<check customId="NoExtraClosure" level="error" class="org.scalastyle.file.RegexChecker" enabled="true">
    <parameters><parameter name="regex">(?m)\.[a-zA-Z_][a-zA-Z0-9]*\(\s*[^,]+s*=>\s*\{[^\}]+\}\s*\)</parameter></parameters>
</check>

<check customId="NoExtraClosure" level="error" class="org.scalastyle.file.RegexChecker" enabled="true">
    <parameters><parameter name="regex">\.[a-zA-Z_][a-zA-Z0-9]*\s*[\{|\(]([^\n>,]+=>)?\s*\{([^()]|(?R))*\}^[,]</parameter></parameters>
</check>

For the second correction

<check customId="TypeNotation" level="error" class="org.scalastyle.file.RegexChecker" enabled="true">
    <parameters><parameter name="regex">\.[a-zA-Z_][a-zA-Z0-9]*\s*[\{|\(]\s*\([^):]*:R))*\}^[,]</parameter></parameters>
</check>

Those rules were not added

cc @srowen

Test build #55914 has started for PR 12413 at commit bd7dec4.

LGTM with a few questions

Test build #55922 has started for PR 12413 at commit c6b3cb8.

Test build #55914 has finished for PR 12413 at commit bd7dec4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

@srowen I changed some more obviously meaningless names to anonymous names and correct parentheses in the classes I changed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55914/
Test PASSed.

Test build #55923 has started for PR 12413 at commit 0ffb4d7.

Test build #55924 has started for PR 12413 at commit 08de54d.

Test build #55922 has finished for PR 12413 at commit c6b3cb8.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55922/
Test FAILed.

Jenkins retest this please

Test build #55927 has started for PR 12413 at commit 08de54d.

Test build #55923 has finished for PR 12413 at commit 0ffb4d7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55923/
Test PASSed.

Merged build finished. Test PASSed.

Test build #55924 has finished for PR 12413 at commit 08de54d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55924/
Test PASSed.

Merged build finished. Test PASSed.

Test build #55927 has finished for PR 12413 at commit 08de54d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55927/
Test FAILed.

Huh, pretty sure that means it actually passed, since there are 2/3 passes and no changes in between.

retest this please.

Recently I just have noticed Docker integration test is being failed. Please allow me to run a test again.

retest this please

Test build #55950 has started for PR 12413 at commit 08de54d.

Test build #55950 has finished for PR 12413 at commit 08de54d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55950/
Test FAILed.

Hm.. I don't think adding a space between map and { causes a test failure in requests for Docker in PostgreSQL and MySQL tests. This is the same test failure I met in https://github.com/apache/spark/pull/12382#issuecomment-209778597, which was passed after retesting.

retest this please

Test build #55978 has started for PR 12413 at commit 08de54d.

Test build #55978 has finished for PR 12413 at commit 08de54d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55978/
Test FAILed.

Am I doing someyhing wrong?

retest this please

Test build #55987 has started for PR 12413 at commit 08de54d.

Test build #55987 has finished for PR 12413 at commit 08de54d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55987/
Test FAILed.

Jenkins retest this please

Test build #55996 has started for PR 12413 at commit 08de54d.

Test build #55996 has finished for PR 12413 at commit 08de54d.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/55996/
Test FAILed.

Jenkins retest this please

Test build #56002 has started for PR 12413 at commit 08de54d.

Test build #56002 has finished for PR 12413 at commit 08de54d.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56002/
Test FAILed.

I really don't get it. I have been looking into this deeper  but I really have no idea. Let me merge upstream and if that doesn't work, I will try to take the changes out class by class.

These all look spurious

Jenkins retest this please

Test build #56006 has started for PR 12413 at commit 08de54d.

Test build #56006 has finished for PR 12413 at commit 08de54d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56006/
Test PASSed.

Merged build finished. Test PASSed.

Merged to master

Hey why are we removing the explicit types? Some of them are here to provide strong guards on the input. I'm not sure what this is accomplishing

Also I don't think we should ever have a rule that forbids explicit type annotation. That is just asking for trouble.

The title is somewhat misleading. 95% of the change is removing extra layers of braces. There are a few instances where types were removed where they appeared redundant, along the way. "Inappropriate" isn't quite the right word; maybe superfluous. No style rules have been added (see PR), though he wrote down what he tried but didn't enact.
So the question is about things like this?
new JavaDoubleRDD(rdd.flatMap(fn).map((x: jl.Double) => x.doubleValue()))

becoming
new JavaDoubleRDD(rdd.flatMap(fn).map(_.doubleValue()))

?
In the method, fn is already known to produce jl.Double so this is redundant. It does not add type safety that I can see. I supported removing a few instances of this type merely to make it more readable. The others are in examples, where they show user code with these types that aren't necessary.
If I missed a reason for that -- or if you just really want that type -- those changes are minor either way and could be undone. But I reviewed all the changes again and they look correct as intended.

How is the type "(rdd: RDD[(String, Int)], time: Time)" obvious? I'd rather roll that back. But more importantly, while I think it is worthwhile to get the codebase to some consistent style (e.g. the {{ one is good), some of the things changed in this pr (the ones that removed explicit typing, or replaced x => with _. are very questionable. They don't really improve clarity or achieve any consistency (because we have tons of other places that are using either style).

@HyukjinKwon I think we should either ...

revert this patch and you submit another one that just fixes the straightforward problems
or
you go ahead and submit another pr that reverts the questionable changes.

In general I think we should not change code for the sake of changing code if the impact is minimal, or even regressing.

The type isn't that obvious, but it's also not necessary code-wise or to understand the example. I think. Generally the code doesn't write these types of course. This is an example however, for people to learn from. But, I also see most examples don't write types in this case. Seems reasonable to be consistent.
I suggested the further changes to lines that were being changed already (cf. above). There are some additional changes sort of in the same spirit that were not on lines already being modified for the core purpose of the change. Each of the changes looks OK to me, but the gain is very small. If I could wave a wand and make all the code follow one style -- it would be of the sort reflected in this change. We're not going to literally do that, but chipping a way a little is a tiny net improvement.
While I don't think it's worth modifying further, and certainly not undoing the core {{...}} changes, I wouldn't object if you undo the other changes, if you feel strongly. The blame "damage" is done, I'm afraid.

I understood the type does not look obvious but I think in the way similar with @srowen.
I do not feel strongly I should undo "the questionable changes" ( removed explicit typing and replaced x => with _). I can't decide for now.
Let me please take an action maybe after hearing other opinions.

Let me simply just add a minor PR to remove the changes such as removed explicit typing and replaced x => with _.

no need to do the x => to _ one. I wouldn't do the change in the first place, but now they are done, changing them back doesn't really do much either so let's just leave them there. The explicit type ones are the one that actually matter.

btw thanks!


Add new Built-in transforms to support new ACES Studio config

We want to allow the upcoming Studio config to be LUT-free for version 2.2 of the library.
Here is the current list of transforms to add:

ARRI LogC4
CanonLog3

Closing this as fixed via PR #1704.


Paying for College: Move legacy django-college-costs-comparison tool pages into cf.gov repo

There are three legacy pages that use the front/base_nonresponsive template:

https://www.consumerfinance.gov/paying-for-college/manage-your-college-money/
https://www.consumerfinance.gov/paying-for-college/choose-a-student-loan/
https://www.consumerfinance.gov/paying-for-college/repay-student-debt/

This PR moves these pages into this repo more or less wholesale. The background image is gone, and the share buttons at the bottom of the page are gone.
Additions

Paying for College: Move legacy django-college-costs-comparison tool pages into cf.gov repo.

How to test this PR

Compare local versions of the following to the production pages:

http://localhost:8000/paying-for-college/manage-your-college-money/
http://localhost:8000/paying-for-college/choose-a-student-loan/
http://localhost:8000/paying-for-college/repay-student-debt/

Unlike production, the mega menu should be present on those pages in this PR at mobile size.
Existing PfC pages should not be broken (https://www.consumerfinance.gov/paying-for-college/your-financial-path-to-graduation)

Notes

There will be padding issues, but this is aiming for slightly better than the current state of those pages.
Where the Georgia typeface was used, it was converted to Avenir.
I think https://github.com/cfpb/django-college-costs-comparison can be archived after this is merged. Yes? @higs4281

can be archived after this is merged.

@ans Yes, indeed, we can finally archive. And we can remove this import:
https://github.com/cfpb/consumerfinance.gov/blob/main/requirements/libraries.txt#L49

Oh, and removing this line in settings should happen along with the requirements deletion:
https://github.com/cfpb/consumerfinance.gov/blob/main/cfgov/cfgov/settings/base.py#L104

@higs4281 references removed in https://github.com/cfpb/consumerfinance.gov/pull/6307/commits/855bbfd8e5806a488bc7f1c7684d58a751736b38 thanks!


add-resource for prepare-package phase doesn't add to jar

I'm trying to add resources to the POM for the prepare-package phase so that a directory outside of src/main/resources is added to the jar, but not to the target/classes/ directory. This is my plugin configuration:
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>add-resource</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>add-resource</goal>
            </goals>
            <configuration>
              <resources>
                <resource>
                  <directory>${project.basedir}/foo</directory>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>

When I run mvn clean package, the contents of foo/ are not added to the jar. Is there another way to configure this, or is this working incorrectly?
Thank you!

add-resource add a folder to the internal list of resource-folders, so resource:resource will copy all those files to target/classes. You are probably looking for https://maven.apache.org/plugins/maven-resources-plugin/examples/copy-resources.html


Stop recording during an event

Hi and thank you for this great project !
Is it possible to set ffmpeg to stop recording during an event? For example, if a person is detected, I'd like ffmpeg to record for 30 seconds, which produces a file and then start a new recording file for 30 sec as long as the event is still present ?
Thanks !

In the 3.0 beta the config option max_recording_time is available which does exactly what you need!
You put it under the recorder section of your camera configuration

Great ! I have another demand: Will it be possible to have a smtp component with ability to send immediatly an e-mail on starting event with screenshot and after recording is done to send an e-mail with the video ?
Thanks !

In the future for sure, but right now i am busy with the 3.0 release and cant give a timeline on when i can implement smtp.


Cinder CSI Inline volume support

What this PR does / why we need it:
Inline Volume Support CSI
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

/test

/test cloud-provider-openstack-acceptance-test-keystone-authentication-authorization

/hold
Lets wait for k/k v1.16 to have https://github.com/kubernetes/kubernetes/pull/80568/files, with this we can remove the command line flag --mode  from the the driver,as driver mode can be specified in CSIDriver CRD, having two ways to specify same things would create confusion later, so IMO for this PR we should wait till k/k v1.16

/hold cancel

/test pull-cloud-provider-openstack-test

/test pull-cloud-provider-openstack-test

/test pull-cloud-provider-openstack-test

/test pull-cloud-provider-openstack-test

/test pull-cloud-provider-openstack-test

/test cloud-provider-openstack-acceptance-test-keystone-authentication-authorization

@adisky Thanks. Please update description with release notes and also link the issue .
Rest looks good to me.

@adisky Thanks. Please update description with release notes and also link the issue .
Rest looks good to me.

Done!!

Thanks.
/lgtm

/approve


how i can user export and import in non laravel ?

Prerequisites
Versions

PHP version:
Laravel version:
Package version:

Description
how i can user export and import in non laravel ?
Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

You could have a look at PhpSpreadsheet.
Laravel Excel is a wrapper around this package, so Laravel Excel needs Laravel.


Make Atom safe and faster

Atom had a memory leak which is not desirable: https://github.com/oxc-project/oxc/issues/1803
I removed the memory and miri test to the parser: https://github.com/oxc-project/oxc/pull/2294
The change introduced some performance regressions and a unsafe
https://github.com/oxc-project/oxc/blob/6002560fa1398bc4bc68696e402e51c776f4ed53/crates/oxc_span/src/atom.rs#L103-L104
The next goal is to remove this unsafe.

Can I tackle this? I already have a WIP which steals a lot of the efficient code of CompactString. @Boshen I know you're aware of that, but obviously you ran out of patience waiting for me (I don't blame you). I seem to have got side-tracked by trying to optimize the lexer!
But now that the memory leak is solved, perhaps it's a little less urgent?

That sound OK to you?

I can't wait! But take your time and enjoy the fun!

Instead of exposing a single Atom type, I'm thinking along the lines of:

ArenaStr<'a> with the functionaries of inlined string + arena allocated str
CompactStr with the functionaries of inlined string + heap allocated str

The ArenaStr<'a> will have to_compact_str and to_string for downstream usages, the user has the choice of choosing the most convenient one for them.

This is really nice - nice combination of efficiency and usability.
Just to check a couple of things:
ArenaStr<'a> is what will be used in the AST? to_compact_str / to_string are for downstream users, if they don't want to deal with lifetimes in their own code, or if they want to mutate the string?
I'm unclear how ArenaStr<'a> can be size of a u32. I was imagining ArenaStr<'a> being 16 bytes:

Bytes 0-7: Pointer
Bytes 8-11: Length (u32)
Bytes 12-15: Unused (though could find uses for this e.g. index into Vec of escaped strings, or flags for "String is in source code" / "String is escaped" / "String is Unicode").

We could probably squeeze it down smaller using pointer compression, but:

That optimization could also apply to Vecs and Boxs in the AST, so I was thinking of it as a broader issue.
16 is probably a good size for making majority of strings be stored inline (most JS identifiers are under 16 bytes).

Or have I misunderstood, and you have something else in mind?

ArenaStr<'a> is what will be used in the AST?

Yes.

ArenaStr<'a> can be size of a u32. I was imagining ArenaStr<'a> being 16 bytes

16 bytes would be even better! If you are able to shrink it down :-)

Alright, we are going to solve this problem in a few steps:

refactor the Atom API without changing the implementation, i.e. add CompactStr and to_compact_str.
Change all downstream usages to use CompactStr, i.e. all crates other than the AST and parser crate should use CompactStr
Change Atom to ArenaStr<'a> within the ast and parser crates

Sounds like a plan!
Do we need CompactStr to be mutable? If not, we could make our own version of CompactStr which has same size and layout as ArenaStr. It would only differ in where it stores out-of-line content for strings over 16 bytes (heap instead of reference to source text/arena).
Advantage of that would be that for strings under 16 bytes, converting from ArenaStr<'a> to CompactStr (or back) would be free - just transmute.
But if CompactStr needs to be mutable, this wouldn't work, as it'd require a capacity field.

Sounds like a plan!
Do we need CompactStr to be mutable? If not, we could make our own version of CompactStr which has same size and layout as ArenaStr. It would only differ in where it stores out-of-line content for strings over 16 bytes (heap instead of reference to source text/arena).
Advantage of that would be that for strings under 16 bytes, converting from ArenaStr<'a> to CompactStr (or back) would be free - just transmute.
But if CompactStr needs to be mutable, this wouldn't work, as it'd require a capacity field.

16 bytes would be even better! If you can shrink it down :-)

Yes, this is totally possible. Same size as Box<str>, and use compact_str's trick of smuggling discriminant for inline/arena + inline length in the last byte (only byte values 0-191 are legal for last byte of a UTF-8 string, so you have values 192-255 free to represent other states).

Continue on https://github.com/oxc-project/oxc/issues/2516