AttributeError: 'Options' object has no attribute 'tag_drop_out'

When I run dreambooth training locally I get this error message:
AttributeError: 'Options' object has no attribute 'tag_drop_out'
Complet version of the error message:
`***** Running training *****
Num examples = 1380
Num batches each epoch = 1380
Num Epochs = 1
Instantaneous batch size per device = 1
Total train batch size (w. parallel, distributed & accumulation) = 1
Gradient Accumulation steps = 1
Total optimization steps = 1200
Training settings: CPU: False Adam: True, Prec: fp16, Prior: True, Grad: True, TextTr: True EM: False, LR: 1e-06
Allocated: 4.4GB
Reserved: 4.4GB
Steps:   0%|                                                                                | 0/1200 [00:00<?, ?it/s] Exception while training: 'Options' object has no attribute 'tag_drop_out'
Allocated: 4.4GB
Reserved: 4.4GB
Traceback (most recent call last):
File "F:\StableDifusion\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\train_dreambooth.py", line 972, in main
for step, batch in enumerate(train_dataloader):
File "F:\StableDifusion\stable-diffusion-webui\venv\lib\site-packages\accelerate\data_loader.py", line 376, in iter
current_batch = next(dataloader_iter)
File "F:\StableDifusion\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data\dataloader.py", line 681, in next
data = self._next_data()
File "F:\StableDifusion\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data\dataloader.py", line 721, in _next_data
data = self._dataset_fetcher.fetch(index)  # may raise StopIteration
File "F:\StableDifusion\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data_utils\fetch.py", line 49, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "F:\StableDifusion\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data_utils\fetch.py", line 49, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "F:\StableDifusion\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\train_dreambooth.py", line 422, in getitem
example["instance_prompt"] = self.text_getter.create_text(instance_prompt,
File "F:\StableDifusion\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\finetune_utils.py", line 41, in create_text
if shared.opts.tag_drop_out != 0:
File "F:\StableDifusion\stable-diffusion-webui\modules\shared.py", line 429, in getattr
return super(Options, self).getattribute(item)
AttributeError: 'Options' object has no attribute 'tag_drop_out'`
if someone is able to solve this problem I thank him in advance

I  get this error too. have  u solve  it ?

No, unfortunately I still haven't found a solution... but at least I see that I'm not the only one with this problem

I get this error too. have u solve it ?

No, unfortunately I still haven't found a solution... but at least I see that I'm not the only one with this problem

Same exact issue,
`***** Running training *****
Num examples = 25
Num batches each epoch = 25
Num Epochs = 60
Shuffle After Epoch = False
Instantaneous batch size per device = 1
Total train batch size (w. parallel, distributed & accumulation) = 1
Gradient Accumulation steps = 1
Total optimization steps = 1500
Training settings: CPU: False Adam: True, Prec: fp16, Prior: False, Grad: False, TextTr: True EM: True, LR: 1.72e-06
Allocated: 5.5GB
Reserved: 5.6GB
Steps:   0%|                                                                                | 0/1500 [00:00<?, ?it/s] Exception while training: 'Options' object has no attribute 'tag_drop_out'
Allocated: 5.5GB
Reserved: 5.6GB
Traceback (most recent call last):
File "E:\SD\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\train_dreambooth.py", line 1115, in main
for step, batch in enumerate(train_dataloader):
File "E:\SD\stable-diffusion-webui\venv\lib\site-packages\accelerate\data_loader.py", line 376, in iter
current_batch = next(dataloader_iter)
File "E:\SD\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data\dataloader.py", line 681, in next
data = self._next_data()
File "E:\SD\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data\dataloader.py", line 721, in _next_data
data = self._dataset_fetcher.fetch(index)  # may raise StopIteration
File "E:\SD\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data_utils\fetch.py", line 49, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "E:\SD\stable-diffusion-webui\venv\lib\site-packages\torch\utils\data_utils\fetch.py", line 49, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "E:\SD\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\train_dreambooth.py", line 474, in getitem
example["instance_prompt"] = self.text_getter.create_text(instance_prompt,
File "E:\SD\stable-diffusion-webui\extensions\sd_dreambooth_extension\dreambooth\finetune_utils.py", line 64, in create_text
if shared.opts.tag_drop_out != 0:
File "E:\SD\stable-diffusion-webui\modules\shared.py", line 433, in getattr
return super(Options, self).getattribute(item)
AttributeError: 'Options' object has no attribute 'tag_drop_out'`
Tried restarting, updating everything, reinstalling everything, nothing works, and i doubt the issue is in my hardware as i am using a RTX3090
Havent found more info on this on other forums.

I finally managed to solve this problem, here is what I did:
1: Checked for Miniconda in my PC (it had been uninstalled inadvertently, but even after reinstalling dreambooth didn't work)
2: Reinstalled Stable diffusion version Automatic1111 (even if this version still has the same name and I already had it, it is constantly updated and some extensions need the latest version of stable diffusion to work)
The official link: https://github.com/AUTOMATIC1111/stable-diffusion-webui
3: Forcing Xformers by adding this command line in the webui-user.bat file :
set COMMANDLINE_ARGS= --xformers
After these manipulations everything worked without any problem.
I hope this helps and sorry if my English is bad

I have the same issue.
I have updated my Stable-Diffusion-WebUI and the dreambooth extension.

Same issue here, reinstalled everything twice, all freshly cloned from github (webUI, dreambooth etc.). still get the same error.

So tag_drop_out is related to the webui. Most likely you have to update your webui to solve this.
If that doesn't work (as was my case), revert to an older commit. I reverted back to 263b323de12eb2444b0818105575a2bc69ab0344, and it's working again.

Thanks. It works for me

In my case, updating the webui did not solve the problem, so I solved it by editing stable-diffusion-webui/config.json and adding the following two keys and values.
"tag_drop_out": 0,
"shuffle_tags": false

}

In my case, updating the webui did not solve the problem, so I solved it by editing stable-diffusion-webui/config.json and adding the following two keys and values.
"tag_drop_out": 0,
"shuffle_tags": false

}

Genius, not sure what this does but it fixed it. If you dont mind me asking, what exactly does this fix, what was the issue.


x/mobile/cmd/gomobile: bind fails for cloud.google.com/go/trace

What version of Go are you using (go version)?
1.10
Does this issue reproduce with the latest release?
Not quite sure. I tried re-installing gomobile but still getting:
[matti@babylon trace (master)] % gomobile version
gomobile version unknown: binary is out of date, re-install it

I followed this for (re)installing the gomobile cmd:
$ go get golang.org/x/mobile/cmd/gomobile
$ gomobile init

What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/matti/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/matti/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.10/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.10/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/jw/jrh0fgfn42ndjty5zpbsv8p00000gn/T/go-build504316821=/tmp/go-build -gno-record-gcc-switches -fno-common"
What did you do?
I was attempting to build (bind) iOS framework out of the Google Stackdriver Cloud Trace Go library cloud.google.com/go/trace. Reproduce by
go get -u cloud.google.com/go/trace
cd ~/go/src/cloud.google.com/go/trace
gomobile bind -target ios -o /tmp/Cloudtrace.framework

What did you expect to see?
The /tmp/Cloudtrace.framework to be built.
What did you see instead?
The build failed to:
gomobile: darwin-arm: go build -tags ios -buildmode=c-archive -o /var/folders/jw/jrh0fgfn42ndjty5zpbsv8p00000gn/T/gomobile-work-736257513/trace-arm.a gobind failed: exit status 2
# gobind
/var/folders/jw/jrh0fgfn42ndjty5zpbsv8p00000gn/T/gomobile-work-736257513/src/gobind/go_tracemain.go:53: cannot use (*proxytrace_SamplingPolicy)(_param_p0_ref) (type *proxytrace_SamplingPolicy) as type "cloud.google.com/go/trace".SamplingPolicy in assignment:
	*proxytrace_SamplingPolicy does not implement "cloud.google.com/go/trace".SamplingPolicy (missing Sample method)

Building some other Google modules (eg. storage) works fine. I checked the type limitations for gomobile bind and what this page https://godoc.org/golang.org/x/mobile/cmd/gobind lists does not seem to list anything that would prevent the following from being built:
type SamplingPolicy interface {
        // Sample returns a Decision.
        // If Trace is false in the returned Decision, then the Decision should be
        // the zero value.
        Sample(p Parameters) Decision
}

// Parameters contains the values passed to a SamplingPolicy's Sample method.
type Parameters struct {
        HasTraceHeader bool // whether the incoming request has a valid X-Cloud-Trace-Context header.
}

// Decision is the value returned by a call to a SamplingPolicy's Sample method.
type Decision struct {
        Trace  bool    // Whether to trace the request.
        Sample bool    // Whether the trace is included in the random sample.
        Policy string  // Name of the sampling policy.
        Weight float64 // Sample weight to be used in statistical calculations.
}

I am guessing *proxytrace_SamplingPolicy is something the gomobile bind is creating in its process, there is nothing like that in the trace sources.

If there is something to be done manually to make it build, even if it would require a fork/temporary change to the trace module, I'd be interested to know in order to make it build once - this is for a PoC product and any (working) quick hack would do.

Oh, after realizing I can run use -work switch to make it leave the intermediate temp files on the disk, I dug into it and found go_tracemain.go:
// skipped method SamplingPolicy.Sample with unsupported parameter or return types
type proxytrace_SamplingPolicy _seq.Ref

Given the bind's list of supported types:
- Signed integer and floating point types.

- String and boolean types.

- Byte slice types. Note that byte slices are passed by reference,
  and support mutation.

- Any function type all of whose parameters and results have
  supported types. Functions must return either no results,
  one result, or two results where the type of the second is
  the built-in 'error' type.

- Any interface type, all of whose exported methods have
  supported function types.

- Any struct type, all of whose exported methods have
  supported function types and all of whose exported fields
  have supported types.

I dont understand which rule the method Sample() is breaking?
To go around gomobile bind's type limitations, would it be a proper pattern to write a more bind-friendly facade package that would wrap these non-bind:able libraries? Meanwhile type support for bind gets more thorough, that is..

@matti777  did you ever find out why you couldn't build it? i have a similar issue

I did not. It was a PoC project and did not have time to dig into gomobile's code. Solved my issue by writing a custom facade library which then provided an API which did not produce gomobile bind errors, which I think was (in my case) actually better than using the trace api directly.

This is biting me too, so I made a minimal repro case: https://github.com/bemasc/gobind-fail.  I hope this helps the maintainers to understand the problem.
I think this has something to do with a failure to follow interface embedding across package boundaries.


Update truffle version fix #87

Fixes npm install  problem in 4.1.11

Reproduced the issue on macOS and verified the fix.


Katex Chemical equations in Cloze answer not rendering correctly

Chemical formula typeset using Katex notations and included in Cloze answers do not render correctly in Anki.
For example, this close question with Katex chemical equation in close answer :
<<remembercz "20220709174549335"
	"Water has a chemical formula {$$\ce{H2O}$$}">>

renders incorrectly in Anki:
Water has a chemical formula ( \ce{H2O )}
Where as this cloze question using Katex :
<<remembercz "20220709172833918"
	"Water has a chemical formula {$$H_2O$$}">>

renders correctly:
Water has a chemical formula H2O
Any suggestion on fixing this?

You need to escape the braces, or TiddlyRemember will think the occlusion ends after H2O: https://sobjornstad.github.io/TiddlyRemember/#Escaping braces

@PayneGitHub Just checking, did this resolve your issue?


Add support for the "team.accessLogs" Slack API

Included this in the "team.go" source file. I also wrote a test that is consistent with the style in the rest of the project.
Implements support in this client for the team.accessLogs API:
https://api.slack.com/methods/team.accessLogs
I have also manually verified this code functions properly when connecting to the actual Slack API

Thank you! I'm merging this one but would be nice if you could add the optional before argument as well ^^


create .toml file

Signed-off-by: Mark Dunbavan<EMAIL_ADDRESS>

Could you add instructions on how changes to the netlify.toml should be deployed?
Also, instructions on deploying code changes would be helpful. I assume every time we make a change within scorecards-site, we need to rebuild dist directory and commit that to the repo too?

Could you add instructions on how changes to the netlify.toml should be deployed?
Also, instructions on deploying code changes would be helpful. I assume every time we make a change within scorecards-site, we need to rebuild dist directory and commit that to the repo too?

Hi Azeem.
Any changes to the .toml file just get committed and Netlify will know right away and make changes to the server.
Any changes to the code will be built by netlify automatically and statically generated so you don't do anything at all.
Make sure you make use of deploy previews in GitHub when making changes to the codebase.

Could you add instructions on how changes to the netlify.toml should be deployed?
Also, instructions on deploying code changes would be helpful. I assume every time we make a change within scorecards-site, we need to rebuild dist directory and commit that to the repo too?

The reason there was an issue in deploying first time round was that when the site was created in netlify it would have built the dist folder in the root dir not scorecards-site dir. When you initially set the site up there is usually an option before you init the server being created on where the publish and base dir will be and my guess is that this was done once the server had been created.


Enable text translation.

I am usin qtranslate X. I added __() to inner_html to be it transletable.

If you want to translate the slider content (such as text elements), there is an easier solution: just create an identical slider with a different name with translated texts. In this way you'll have 2 sliders (e.g.: home_slider_eng and home_slider_it).
If you want to translate the backend, you have to follow the instructions from eduardoarandah: https://github.com/fabiorino/crelly-slider/issues/7


gh-234: add pre-commit.ci support

I have already enable pre-commit.ci in the repository settings. This just adds a pretty PR title layer over the bot.
Closes: #234
Refs: #187

Will merge now


ci: Move clippy and coverage tests jobs to PR workflow trigger

Description

move clippy and coverage tests jobs to PR workflow trigger
add workflow_run.id and trigger on completed for pushing artifacts produced in previous workflow

Linked issue

Benefits

clippy and coverage tests will be made in one workflow with other tests
artifacts can be pushed from separate workflow, making it possible to push test artifacts from forks

Checklist

[ ] I've read CONTRIBUTING.md
[ ] I've used the standard signed-off commit format (or will squash just before merging)
[ ] All applicable CI checks pass (or I promised to make them pass later)
[ ] (optional) I've written unit tests for the code changes
[ ] I replied to all comments after code review, marking all implemented changes with thumbs up

I suggest to rename I2::Dev::CodeQuality workflow to I2::Dev::Sonar-Dojo

@RamilMus with_coverage keeps failing with "The operation was canceled"

@RamilMus with_coverage keeps failing with "The operation was canceled"

workflow has line cancel-in-progress: true in here and newly started jobs cancel it. This with_coverage runs more than other jobs in this workflow, and when no new jobs triggered after it will succeed, like in this workflow

Shouldn't it only get cancelled on a re-trigger within the same PR?

Shouldn't it only get cancelled on a re-trigger within the same PR?

This PR doesn't look that breaks those jobs, will check why jobs fail randomly later, created a task.


⚠ Bofrost.at has degraded performance

In fdda755, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1610 ms

Resolved: Bofrost.at performance has improved in 7e303ba after 11 minutes.


chore(docs): getting-started-docs

I didn't go over all yet but I don't think that "Welcome to our new and improved VIVID UI Kit!" and its content is if for the Vivid-next homepage.
I think the site is mainly for developers and this is not relevant for them. vivid@next is not a UI kit for developers. Its an "Essential UI web components" as appearing in the homepage now.
Also not sure that this is relevant for this PR but after pressing a menu item that is a "sub item" the item is closed and no way to see other elements.
before pressing Design Tockens:

after:

can't open or close it

I didn't go over all yet but I don't think that "Welcome to our new and improved VIVID UI Kit!" and its content is if for the Vivid-next homepage. I think the site is mainly for developers and this is not relevant for them. vivid@next is not a UI kit for developers. Its an "Essential UI web components" as appearing in the homepage now.
Also not sure that this is relevant for this PR but after pressing a menu item that is a "sub item" the item is closed and no way to see other elements. before pressing Design Tockens:
after:  can't open or close it

@rachelbt Can you suggest inside the text what changes do you think we should make? It will be more clear.
About the opening bug, we know about it. I don't know how to fix it yet.

@rinaok I completely understand your dilemma,
but it's just an explainer, so maybe there is no need to be bothered.
In the meantime maybe we should leave it as it is,
And if a when an opportunity presents itself write another content.
Besides, maybe in order to create a content that can suit the developers we should know what do you this is the content that can actually be useful. What do you think? @rinaok @yinonov @rachelbt

@rinaok  @AyalaBu
Summarising our decisions from the talk:
Our main audience is developers but it is important to have data for designers in the Vivid-3 as well.

We will add a category for designer where we will add all the readme for the designers.
The Home -Page of the docs will be more "general" and not about installation - with links to point designers & developer to their getting started. @AyalaBu - this is on you :)

references to other style-guide:
https://nordhealth.design/start/
https://carbondesignsystem.com/developing/get-started/

@rachelbt @rinaok @yinonov created a branch of the original UI Kit 2.0 file
in order to be able to work on the documentation there

@rachelbt @rinaok @yinonov I created a branch of the original UI Kit 2.0 file in order to be able to work on the documentation there

@AyalaBu Can you please add the link here?

@rinaok @rachelbt @yinonov
Voila!
https://www.figma.com/file/r8OYLPmRmDqfLKt6KHdJDB/Vivid-UI-Kit---2.0?node-id=76%3A1267

please reopen if still relevant


$npm start not working - same issue both with code from tutorial and branch tutorial_completed

Setup:
I am running Ubuntu 20.04.3 LTS (GNU/Linux <IP_ADDRESS>-microsoft-standard-WSL2 x86_64) under windows WSL 2.
Issue:
This is the code I get both when I run the repo I have copied from "https://hack.aragon.org/docs/tutorial.html" and also branch "tutorial_completed".
Here is the code:
`  $ npm start

<EMAIL_ADDRESS>start
buidler start

(node:8906) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
(Use node --trace-warnings ... to show where the warning was created)
(node:8906) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
main     | Starting Aragon app development...
main     | App name: foo
main     | App id: 0xf57f57247b9ef2b45da478e1a16f7d563a2a97b75d4fdd3be4dc64fca67bc43a
main     | Accounts mnemonic "explain tackle mirror kit van hammer degree position ginger unfair soup bonus"
main     | Account 0 private key 0xa8a54b2d8197bc0b19bb8a084031be71835580a01e70a45a13babd16c9bc1563
main     |            public key 0xb4124cEB3451635DAcedd11767f004d8a28c6eE7
main     | Account 1 private key 0xce8e3bda3b44269c147747a373646393b1504bfcbb73fc9564f5d753d8116608
main     |            public key 0x8401Eb5ff34cc943f096A32EF3d5113FEbE8D4Eb
main     | Account 2 private key 0x8716d2701596f51aa39d061a685d5ae5ec946eb2c7adb059d29024b5bb3b02c8
main     |            public key 0x306469457266CBBe7c0505e8Aad358622235e768
main     | Account 3 private key 0x62d7bb725787d84b059eb4950f6eea060d898183250ca3ea673a36b8e113018f
main     |            public key 0xd873F6DC68e3057e4B7da74c6b304d0eF0B484C7
main     | Account 4 private key 0x705df2ae707e25fa37ca84461ac6eb83eb4921b653e98fdc594b60bea1bb4e52
main     |            public key 0xDcC5dD922fb1D0fd0c450a0636a8cE827521f0eD
main     | Account 5 private key 0x6b12b45143fc6c7721d0ffbb9811905e773868376501fd1f46c64bf34ae29991
main     |            public key 0x27E9727FD9b8CdDdd0854F56712AD9DF647FaB74
main     | Account 6 private key 0x33f3f34569f997abb165d6967895d963a2b15ec609efcec844e65b60ee8340c7
main     |            public key 0x9766D2e7FFde358AD0A40BB87c4B88D9FAC3F4dd
main     | Account 7 private key 0x5a013cc48f0a3196b0986fc7a7a9dd320ac75e89e33302a7ff4ea6b9dc4f7b00
main     |            public key 0xBd7055AB500cD1b0b0B14c82BdBe83ADCc2e8D06
main     | Account 8 private key 0x418cc0b07bfef998f577384b185b97ad544204b5be43ac9b3abf16db2012ab5c
main     |            public key 0xe8898A4E589457D979Da4d1BDc35eC2aaf5a3f8E
main     | Account 9 private key 0x698eece6f9915b08b4d1a63958dc4f3996ee5a8d685b29d17c28beab912a77cd
main     |            public key 0xED6A91b1CFaae9882875614170CbC989fc5EfBF0
main     |
backend  | Compiling contracts...
(node:8906) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
(node:8906) Warning: Accessing non-existent property 'INVALID_ALT_NUMBER' of module exports inside circular dependency
All contracts have already been compiled, skipping compilation.
backend  | Contracts compiled.
/mnt/c/not-sync/git2/aragon/aragon-tutorial/node_modules/merkle-patricia-tree/node_modules/async/lib/async.js:358
callback(err);
^
Error: Callback was already called.
at /mnt/c/not-sync/git2/aragon/aragon-tutorial/node_modules/merkle-patricia-tree/node_modules/async/lib/async.js:43:36
at WriteStream. (/mnt/c/not-sync/git2/aragon/aragon-tutorial/node_modules/merkle-patricia-tree/node_modules/async/lib/async.js:358:17)
at WriteStream.emit (events.js:375:28)
at WriteStream.destroy (/mnt/c/not-sync/git2/aragon/aragon-tutorial/node_modules/level-ws/level-ws.js:140:8)
at finish (internal/streams/writable.js:670:14)
at processTicksAndRejections (internal/process/task_queues.js:82:21)
`
--------------------------------
` $ node --trace-warnings ...
internal/modules/cjs/loader.js:905
throw err;
^
Error: Cannot find module '/mnt/c/not-sync/git2/aragon/aragon-tutorial/...'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
at Function.Module._load (internal/modules/cjs/loader.js:746:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
} `

have same issue with win OS.


Polymorph interfaces

Consider
interface Foo {
  foo: number;
}
interface Bar extends Foo {
  bar: number;
}

Currently, Bar generates a "flat" representation. However, we should embed Foo using allOf into Bar.
Happy to work on a PR if you agree!

Hello,
Yes, you can try to open a PR if you want

Working on it already, do you know how to use ts-morph to only get the own props of a node?
BTW. I think that ONLY interface should generate explicit schema object, all other types should always be inlined.
Otherwise, you get a bunch of weird intermediate explicit schema types in the schema, like this:
        Patched__title-string--__:
            type: object
            properties:
                title:
                    type: string

which stems from Patched<{title: string}> with
export type Patched<T> = {
  [P in keyof T]?: T[P] extends Array<infer U> ? Array<Patched<U>> : T[P] extends ReadonlyArray<infer U> ? ReadonlyArray<Patched<U>> : Patched<T[P]>;
};

do you know how to use ts-morph to only get the own props of a node?

Nope sorry, I think you'll need to dig into ts-morph to find the method

I think that ONLY interface should generate explicit schema objects, all other types should always be inlined

IMO interfaces & types (i.e. type Foo = { bar: string } or interface Foo { bar: string }) (not only interfaces since not everyone use interfaces) should generate explicit schema objects and mapped types should be always inlined

Otherwise, you get a bunch of weird intermediate explicit schema types in the schema, like this:

should be better with https://github.com/Eywek/typoa/commit/bba5a2445d899cc310bd19a8558bad38f976fdb5


Add utility script for working with meta.pkl files

This will permit merging meta files, viewing contents, and creating from scratch.

Looks good.
Merging


Unable to resolve dependency for ':presentation@debug/compileClasspath': Could not resolve com.intuit.sdp:sdp-android:1.0.5

Unable to resolve dependency for ':presentation@debug/compileClasspath': Could not resolve com.intuit.sdp:sdp-android:1.0.5.
When i'am building project

There is a new version now - 1.0.6


Click Interact Inventory Event triggers IndexOutOfBoundsException

java.util.concurrent.ExecutionException: java.lang.IndexOutOfBoundsException: Index: 49, Size: 45
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.8.0_71]
        at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:1.8.0_71]
        at net.minecraft.util.Util.func_181617_a(SourceFile:45) [g.class:?]
        at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:660) [MinecraftServer.class:?]
        at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344) [ko.class:?]
        at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605) [MinecraftServer.class:?]
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481) [MinecraftServer.class:?]
        at java.lang.Thread.run(Thread.java:745) [?:1.8.0_71]
Caused by: java.lang.IndexOutOfBoundsException: Index: 49, Size: 45
        at java.util.ArrayList.rangeCheck(ArrayList.java:653) ~[?:1.8.0_71]
        at java.util.ArrayList.get(ArrayList.java:429) ~[?:1.8.0_71]
        at net.minecraft.inventory.Container.func_75139_a(Container.java:111) ~[xi.class:?]
        at org.spongepowered.common.event.SpongeCommonEventFactory.handleClickInteractInventoryEvent(SpongeCommonEventFactory.java:306) ~[SpongeCommonEventFactory.class:1.8.9-1763-4.1.0-BETA-0]
        at org.spongepowered.common.event.CauseTracker.handlePostTickCaptures(CauseTracker.java:496) ~[CauseTracker.class:1.8.9-1763-4.1.0-BETA-0]
        at org.spongepowered.common.network.PacketUtil.onProcessPacket(PacketUtil.java:108) ~[PacketUtil.class:1.8.9-1763-4.1.0-BETA-0]
        at net.minecraft.network.PacketThreadUtil$1.redirect$onProcessPacket$0(SourceFile:51) ~[fh$1.class:?]
        at net.minecraft.network.PacketThreadUtil$1.run(SourceFile:13) ~[fh$1.class:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_71]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_71]
        at net.minecraft.util.Util.func_181617_a(SourceFile:44) ~[g.class:?]
        ... 5 more

What container? Are any mods installed? I thought this issue was resolved.

I don't know, appeared in my log.

Mods and or plugins installed?

WorldEdit, PermissionsEx, and a couple I wrote that you've probably never heard of. Regardless, nice of them are going to be sending invalid packets, which appears to be what the issue is here.

Client mods are usually the problem. I will investigate further when I get
home this issue was recently seen and addressed I assume it was inadequate
or this is a similar one.
On Mar 22, 2016 11:15 AM, "Wyatt Childers"<EMAIL_ADDRESS>wrote:

WorldEdit, PermissionsEx, and a couple I wrote that you've probably never
heard of. Regardless, nice of them are going to be sending invalid packets,
which appears to be what the issue is here.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/SpongePowered/SpongeCommon/issues/602#issuecomment-199886670

This is probably just a case where we need to assume the packet should be ignored if it's outside of the parameters of what we expect.

Yeah but it could he a calculation error somewhere. Give me time to get
home from school and look.

No calculation error that I can see. The MixinContainer is just assuming all passed in data is valid. I can fix this in like 5 hours or someone else can address it.

We get a similar issue, which I assume is the exact same one, but it crashes us roughly once a day:
java.lang.IndexOutOfBoundsException: Index: 88, Size: 45
	at java.util.ArrayList.rangeCheck(ArrayList.java:653)
	at java.util.ArrayList.get(ArrayList.java:429)
	at net.minecraft.inventory.Container.func_75139_a(Container.java:111)
	at org.spongepowered.common.event.SpongeCommonEventFactory.handleClickInteractInventoryEvent(SpongeCommonEventFactory.java:273)
	at org.spongepowered.common.event.CauseTracker.handlePostTickCaptures(CauseTracker.java:493)
	at net.minecraft.world.World.redirect$onUpdateTileEntities$0(World.java:281)
	at net.minecraft.world.World.func_72939_s(World.java:1718)
	at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:545)
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:701)
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344)
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605)
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481)
	at java.lang.Thread.run(Thread.java:745)

java.lang.IndexOutOfBoundsException: Index: 58, Size: 45
	at java.util.ArrayList.rangeCheck(ArrayList.java:653)
	at java.util.ArrayList.get(ArrayList.java:429)
	at net.minecraft.inventory.Container.func_75139_a(Container.java:111)
	at org.spongepowered.common.event.SpongeCommonEventFactory.handleClickInteractInventoryEvent(SpongeCommonEventFactory.java:273)
	at org.spongepowered.common.event.CauseTracker.handlePostTickCaptures(CauseTracker.java:493)
	at org.spongepowered.common.event.CauseTracker.randomTickBlock(CauseTracker.java:1028)
	at net.minecraft.world.WorldServer.redirect$onUpdateBlocks$0(WorldServer.java:110)
	at net.minecraft.world.WorldServer.func_147456_g(WorldServer.java:431)
	at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:221)
	at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:690)
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344)
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605)
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481)
	at java.lang.Thread.run(Thread.java:745)

etc..


chore: update deps(synth-agent, pw)

Summary
Update deps<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-10-03T06:41:22.861+0000

Duration: 9 min 28 sec

:robot: GitHub comments
Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

/test all : Re-trigger the build for all the stages.


pythonPackages.zopfli: 0.1.7 -> 0.1.8

https://github.com/obp/py-zopfli/releases/tag/v0.1.8

Motivation for this change
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 118398 at d6ac9f26 run on aarch64-linux 1

45 packages marked as broken and skipped:

belle-sip
cassandra_2_1
cassandra_2_2
cvc4
haskellPackages.linearEqSolver
haskellPackages.sbv
liblinphone
lime
linphone
openmodelica
...

159 packages skipped due to time constraints:

DisnixWebService
R
abcl
adapta-gtk-theme
adoptopenjdk-icedtea-web
alloy (alloy5)
alloy4
antlr
antlr3 (antlr3_5)
antlr3_4
...

30 packages built successfully:

patool (python38Packages.patool)
portmod
python38Packages.afdko
python38Packages.booleanoperations
python38Packages.defcon
python38Packages.fontmath
python38Packages.fontparts
python38Packages.fontpens
python38Packages.fonttools
python38Packages.mutatormath
python38Packages.nototools
python38Packages.psautohint
python38Packages.ufoprocessor
python38Packages.zopfli
python39Packages.afdko
python39Packages.booleanoperations
python39Packages.defcon
python39Packages.fontmath
python39Packages.fontparts
python39Packages.fontpens
python39Packages.fonttools
python39Packages.mutatormath
python39Packages.nototools
python39Packages.patool
python39Packages.psautohint
python39Packages.ufoprocessor
python39Packages.zopfli
scfbuild
visidata
xits-math

Only nixpkgs-review failures on macos 10.14 are pre-existing :+1:

Update didn't touch any python files.


Kitura Server on iOS Device

Context and Description
Is https://github.com/IBM-Swift/Kitura-HelloWorld-iOS really the simplest way to run Kitura as a server on an iOS device? Can no cocoapod be provided?
I'm currently looking for options, and while kitura would be my top choice as I love it on linux, it appears to be painful to add when compared with other options such as "swifter" or "embassy" which can be added by adding a single line to my cocoapods file...

It should be possible to build a CocoaPod using the output on the Builder/Makefile script and either publish that or store it in a separate branch.

I also would like Kitura to be available through CocoaPods as I need to run in as part of my client-side macOS app

@ShihabMehboob has been investigating this and will provide some details of our current thoughts soon.

Hey!
You, along with many users on the public forums had expressed a desire for a standalone Kitura Pod which could be added simply into their existing iOS projects in their Pod files via one simple line (e.g. pod 'Kitura', '~> 1.0'), which would substantially simplify the setup process on the user's end, eliminating the need for juggling around with messy imports, and saving them time.
This was investigated by creating podspec files for all Kitura repos and its dependencies, allowing the creation of Pods. The lower level repositories contained within Kitura were the starting point for this, as they contain no dependencies of their own. This included the following:

Socket (Repo containing the podspec)
SSLService (Repo containing the podspec)
LoggerAPI (PR containing the podspec)
Kitura-TemplateEngine (PR containing the podspec)
CCurl (PR containing the podspec - this podspec only contains one .h file - does this even need to be a standalone Pod?)

The Pods would be generated by uploading to the Specs repo via pod trunk push something.podspec. A typical podspec may look as follows:

Pod::Spec.new do |s|
s.name        = "KituraNet"
s.version     = "2.0.4"
s.summary     = "The Kitura-net module contains logic for sending and receiving HTTP requests"
s.homepage    = "https://github.com/IBM-Swift/Kitura-net"
s.license     = { :type => "Apache License, Version 2.0" }
s.author     = "IBM"
s.module_name  = 'KituraNet'
s.requires_arc = true
s.osx.deployment_target = "10.11"
s.ios.deployment_target = "10.0"
s.tvos.deployment_target = "10.0"
s.source   = { :git => "https://github.com/IBM-Swift/Kitura-net.git", :tag => s.version }
s.source_files = "Sources/KituraNet/*.swift"
s.pod_target_xcconfig =  {
'SWIFT_VERSION' => '4.0.3',
}
end

As the podspecs rely on including the version number as a tag (e.g. s.source   = { :git => "https://github.com/IBM-Swift/Kitura-net.git", :tag => s.version }), the concern of keeping the repos up to date and in sync was raised. If a newer version was to be released of a repo, the podspecs would also have to be updated in accordance to reflect this, which could turn into an unnecessarily laborious task (as there are many new versions often tagged and released of these repos).
This also led into the issue of attempting to create a Pod for a much bigger repo, such as Kitura, which relies upon the other previously mentioned repos, along with Kitura-net too. Two options were introduced at this point:

We could create one individual standalone Pod using the raw files from each and every repo within Kitura, manually added into one folder on a pod branch. This would be a messy solution where all the files would have to be gathered from every dependency, and put into one containing folder from which the Pod would be created. The import statements above each file would also have to be removed. This is the manner in which KituraKit approached this, as evident here, which required a separate branch to house it, and the source referencing it (e.g. s.source = { :git => "https://github.com/IBM-Swift/KituraKit", :branch => "pod", :submodules => true }). You can imagine how large this could grow if the entirety of Kitura were to take on this approach, and how laborious it would be to change every changed file every time something in its dependency tree were to get an update. Another sample of this can be seen here for KituraContracts, which has rearranged the Source folder to include LoggerAPI as the podspec validation complains about missing LoggerAPI if the folder isn't present and rather just attempted to be imported. This has been done as an experiment, and would be far too complex and messy for anything larger such as Kitura.

We could carry on the route we did for the previous repos, where a Pod was created for each individual smaller repo and then referenced in the podspecs of the repos that rely on it (e.g. s.dependency 'BlueSocket', '~> 1.0.2'). This depends upon all the dependency pods to be tagged correctly, and kept up to date with each version release. This might be fine if something was developed once and never touched again, but not so much when code is ever changing. Whilst this method does not bring in and duplicate every file from its dependencies like the previous option, it relies on adding another Pod as a dependency within a Pod, and each Pod to be up to date and correctly referenced with the version.

Both options had one major issue, the files would have to continually be changed after every release of every dependency that got changed, with either versions correctly tagged and kept in sync, or files manually added each and every time with every new update that was released. The approach of creating Pods works best for small and standalone repos, not for those that are far larger and rely on many others.
Going forward, we're hoping that Apple announces a better way to handle this within Swift Package Manager soon for iOS, thus voiding the need for Pods to be created for Kitura (and removing the need for Cocoapods altogether).

@hactar You are correct, after a discussion we've decided to continue to go ahead with this.
@ShihabMehboob and I are currently looking into it, and hope to have something in place soon!


Nicer ILP extractor

This improves the ILP extractor. It introduces more simplification on the egraph before solving and changes the ILP extractor to only block cycles that are found in the solver's result.
This code produces better answers than the version it replaces - both version cheat though. The previous version excluded about 1/4 of nodes, mostly for no good reason. This version has a tight-timeout (currently 6 seconds) on ILP solving and returns the bottom-up result when that limit is exceeded. On the test set of 220 problems, about 35 timeout.
It's probably better to block the cycles up front like @AD1024 does in the maxsat extractor.
Most of the new code added is to remove nodes that won't be selected from the Egraph. Later on I can pull out that code so that it can be run before other extractors.
The results, with a 6 second cumulative solving timeout,  are:
cumulative time for bottom-up: 3441ms
cumulative time for ilp-cbc: 316560ms
bottom-up / ilp-cbc
geo mean
tree: 0.9706
dag: 1.0023
micros: 0.0036
quantiles
tree:   0.4286, 1.0000, 1.0000, 1.0000, 1.0000
dag:    1.0000, 1.0000, 1.0000, 1.0000, 1.2000
micros: 0.0001, 0.0021, 0.0038, 0.0064, 0.1222

Notable are:

It takes about 100x as long as bottom-up.
The DAG results are never worse than bottom-up
On average the results are 0.2% better.

When I instead use a 7200 second timeout, we get 10 timeouts and:
cumulative time for bottom-up: 3479ms
cumulative time for ilp-cbc: 93800888ms
bottom-up / ilp-cbc
geo mean
tree: 0.9620
dag: 1.0070
micros: 0.0016
quantiles
tree:   0.3849, 1.0000, 1.0000, 1.0000, 1.0000
dag:    1.0000, 1.0000, 1.0000, 1.0000, 1.6787
micros: 0.0000, 0.0012, 0.0029, 0.0048, 0.1491

So as @mwillsey has said before, our test problems have small dag vs. tree differences.
The previous results for this extractor were quite bad:
cumulative time for bottom-up: 3194ms
cumulative time for ilp_cbc: 283199ms
bottom-up / ilp_cbc
geo mean
tree: 0.5734
dag: 0.6673
micros: 0.0208
quantiles
tree:   0.0604, 0.4878, 0.5394, 0.6740, 1.0000
dag:    0.0976, 0.5751, 0.6366, 0.7717, 1.2106
micros: 0.0001, 0.0142, 0.0238, 0.0348, 0.1298

So our test set only has a few dag vs tree differences, but there are some! Unless I'm reading this wrong, it looks like this patch never beats bottom-up on tree cost? That would be bad, since the whole point is to do that, right?

So our test set only has a few dag vs tree differences, but there are some! Unless I'm reading this wrong, it looks like this patch never beats bottom-up on tree cost? That would be bad, since the whole point is to do that, right?

Nice questions. I'll describe how I understand things at the moment, could easily be mistaken. My understanding is that the DAG cost considers sharing and the tree cost doesn't.  So the DAG cost includes each selected node's cost once. The tree cost includes each nodes cost once per time it's used as a child of another node. So given the graph (A+A),  the DAG cost includes the cost of the A node once, while the tree cost includes its cost twice.
It's really fast to calculate the optimal tree cost, because you can look locally and just select the lowest code node in each class.  Bottom-up does this. Getting the optimal DAG cost is much harder and is something like NP-hard.
If this is right, a few things follow. The ILP approach should never do better than bottom-up on tree cost - because bottom-up is optimal, and the optimal DAG cost should always be less than or equal to the optimal tree cost. Both hold in the new results.

:facepalm: I was reading the division number in the code blocks backwards. Your code does indeed seem like an improvement then.
So now the question becomes what is the utility of the various configurations? Is pre-loading the search with the bottom up results not always a good idea?

So now the question becomes what is the utility of the various configurations? Is pre-loading the search with the bottom up results not always a good idea?

When I tried pre-loading the search it took longer. It's counter intuitive.
Just now when I tried some different configuration options it segfaulted. I think it's failing some times on the newly added problems, so I need to test this PR more carefully.

@Bastacyclop mentioned that #7 should be subsumed by this. @TrevorHansen do you have an idea on where this sits in the current landscape of extractors? I'd like the get some of these PRs closed/merged in the coming week.

@Bastacyclop mentioned that #7 should be subsumed by this. @TrevorHansen do you have an idea on where this sits in the current landscape of extractors? I'd like the get some of these PRs closed/merged in the coming week.

I've got a little bit of cleanup, then this will be ready for you to consider merging. I'll generate some new performance data when I do that so that its performance can be compared to the other extractors.

@Bastacyclop mentioned that #7 should be subsumed by this. @TrevorHansen do you have an idea on where this sits in the current landscape of extractors? I'd like the get some of these PRs closed/merged in the coming week.

I've had the time to clean up this extractor, and it's now ready to review.
Conceptually there are two things that it's helpful to keep in mind to understand what it does:

If it can be done without exponential increases, it tries to collapse down the egraph so each non-root class has >1 parent class.
It doesn't block cycles before calling the ILP solver, instead it blocks cycles that are returned by the ILP solver.

Here is the comparison to the current ILP extractor, both run with a 10 second solver time-out:
faster-ilp-cbc-timeout vs ilp-cbc-timeout

extractors: ['faster-ilp-cbc-timeout', 'ilp-cbc-timeout']
data/babble/list_list_hard_test_ellisk_2019-02-15T11.26.41--bench010_it15.json  differs in dag cost:  425 426
data/babble/physics_scientific_unsolved_4h_ellisk_2019-07-20T18.05.46--bench003_it3.json  differs in dag cost:  171 172
data/babble/list_list_hard_test_ellisk_2019-02-15T11.26.41--bench009_it12.json  differs in dag cost:  407 408
data/babble/physics_scientific_unsolved_4h_ellisk_2019-07-20T18.13.12--bench001_it1.json  differs in dag cost:  144 145
data/babble/physics_scientific_unsolved_4h_ellisk_2019-07-20T18.20.13--bench001_it1.json  differs in dag cost:  155 156
data/babble/list_list_hard_test_ellisk_2019-02-15T11.35.48--bench005_it5.json  differs in dag cost:  243 244
data/babble/towers_tower_batch_50_3600_ellisk_2019-03-26T10.51.16--bench002_it3.json  differs in dag cost:  231 232
data/tensat/bert.json  differs in dag cost:  0.7960839965562627 0.82470399630256
data/tensat/bert_acyclic.json  differs in dag cost:  0.8210050156958459 0.8270000170450658
data/eggcc-bril/block-diamond.bril.json  differs in dag cost:  70 72
data/eggcc-bril/simple_recursive.bril.json  differs in dag cost:  1051 1073
data/rover/box_filter_3iteration_egraph.json  differs in dag cost:  1701 1819
data/rover/mcm_3_7_21_original_8iteration_egraph.json  differs in dag cost:  1050 1165
data/rover/mcm_3_7_21_original_9iteration_egraph.json  differs in dag cost:  1050 1165
cumulative tree cost for faster-ilp-cbc-timeout:<PHONE_NUMBER>4754
cumulative tree cost for ilp-cbc-timeout:<PHONE_NUMBER>7110
cumulative dag cost for faster-ilp-cbc-timeout: 78666
cumulative dag cost for ilp-cbc-timeout: 79045
Cumulative time for faster-ilp-cbc-timeout: 445713ms
Cumulative time for ilp-cbc-timeout: 953777ms
faster-ilp-cbc-timeout / ilp-cbc-timeout
geo mean
tree: 1.0094
dag: 0.9987
micros: 0.2747
quantiles
tree:   0.8415, 1.0000, 1.0000, 1.0000, 2.3333
dag:    0.9013, 1.0000, 1.0000, 1.0000, 1.0000
micros: 0.0004, 0.1635, 0.3450, 0.6229, 1.5938

Here are some graphs showing the comparison:

I'm happy to change as required.

I'd like to get this merged in then get to work on the next parts. I appreciate this is a big path. Is there anything I can do to make it easier to review? Cheers.

Yes, let's merge this. Can you enhance the documentation in the file? The comment above is a good start, but I have a couple more questions.

The comment at the top of the file mentions incrementality, but then another comment mentions that you don't actually incrementally call the solver?
How do you "break" each cycle found by the solver?
Why did you decide to do cycle breaking rather than the topological sort approach... performance?
Can you add a little documentation the "removal" part of simplification? I think I get the collapse down part.
The e-graph simplification could be a separate utility, it seems that it could benefit all extraction methods. This isn't a change request, just a comment.

Thanks for the comments @mwillsey. I've described a bit better what's happening with the code.  Let me know where it could be clearer and I'll improve.
Yes, I agree that the e-graph simplification should be a separate utility.

Sorry for the delay on this!


NullReferenceException in CertificateUtil

The call
dotnet run -- createcertchain -s "My CA" -p mypassword -i 3
results in the following Runtime error:
Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at RW.DPSCertificateTool.CertificateUtil.CreateCaCertificate(String subjectName, String certificatePassword, X509Certificate2 issuingCa) in C:\source\local\AzureIoTDPSCertificates-master\AzureIoTDPSCertificates-master\src\DPSCertificateTool\CertificateUtil.cs:line 73
at RW.DPSCertificateTool.CreateCertChain.OnExecute() in C:\source\local\AzureIoTDPSCertificates-master\AzureIoTDPSCertificates-master\src\DPSCertificateTool\CreateCertChain.cs:

I found the Problem and solution within the CreateCaCertificate-Method of the CertificateUtil-Class:
if (issuingCa != null)
{
// set the AuthorityKeyIdentifier. There is no built-in
// support, so it needs to be copied from the Subject Key
// Identifier of the signing certificate and massaged slightly.
// AuthorityKeyIdentifier is "KeyID="
// var issuerSubjectKey = issuingCa.Extensions["Subject Key Identifier"].RawData;
byte[] issuerSubjectKey = null;
foreach (var item in issuingCa.Extensions)
{
if(item.Oid.Value == "<IP_ADDRESS>")
{
issuerSubjectKey = item.RawData;
break;
}
}
               var segment = new ArraySegment<byte>(issuerSubjectKey, 2, issuerSubjectKey.Length - 2);
                var authorityKeyIdentifier = new byte[segment.Count + 4];
                // these bytes define the "KeyID" part of the AuthorityKeyIdentifer
                authorityKeyIdentifier[0] = 0x30;
                authorityKeyIdentifier[1] = 0x16;
                authorityKeyIdentifier[2] = 0x80;
                authorityKeyIdentifier[3] = 0x14;
                segment.CopyTo(authorityKeyIdentifier, 4);
                request.CertificateExtensions.Add(new X509Extension("<IP_ADDRESS>", authorityKeyIdentifier, false));
            } [Configuration.CA].RawData;

Sorry for the late response, I've been offline on vacation.
I am unable to reproduce the problem. The extension with OID <IP_ADDRESS> is "Subject Key Identifier" (as you already knew).
I don't know why that shouldn't have a name on your computer, or has it perhaps been localized?
What are the properties of the <IP_ADDRESS> extension on your computer, specifically the item.Oid.FriendlyName ?


Require gem with native extensions inside of a library.

Description
Trying to install gem with native extensions fails due to not having a C++ compiler on the node. My objective is to install the gem, and then be able to require it inside of a ruby file inside of cookbook/libraries/.
An example:
# cookbook/library/test.rb
require 'mechanize'

class Mechanize::HTTP::Agent
  #...more code here
end

This is an example of what I have in my metadata.rb
gem 'mechanize', '~> 2.7.5'

Chef Version
Chef Development Kit Version: 1.2.20
chef-client version: 12.4.0
delivery version: master (0b746cafed65a9ea1a79de3cc546e7922de9187c)
berks version: 5.6.4
kitchen version: 1.15.0
Platform Version
Centos 7.2
Replication Case
Create a cookbook and require gem to be installed on the node with native extensions, such as mechanize or nokogiri.
Client Output
Installing Cookbook Gems:

       Running handlers:
       [2017-08-16T23:16:46+00:00] ERROR: Running exception handlers
       [2017-08-16T23:16:46+00:00] ERROR: Running exception handlers
       Running handlers complete
       [2017-08-16T23:16:46+00:00] ERROR: Exception handlers complete
       [2017-08-16T23:16:46+00:00] ERROR: Exception handlers complete
       Chef Client failed. 0 resources updated in 23 seconds
       [2017-08-16T23:16:46+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
       [2017-08-16T23:16:46+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
       [2017-08-16T23:16:46+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
       [2017-08-16T23:16:46+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
       [2017-08-16T23:16:46+00:00] ERROR: Expected process to exit with [0], but received '5'
       ---- Begin output of bundle install ----
       STDOUT: Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
       installing your bundle as root will break this application for all non-root
       users on this machine.
       Fetching gem metadata from https://www.rubygems.org/..................
       Fetching version metadata from https://www.rubygems.org/..
       Resolving dependencies...
       Installing unf_ext <IP_ADDRESS> with native extensions
       Installing mime-types-data 3.2016.0521
       Installing net-http-digest_auth 1.4.1
       Installing net-http-persistent 2.9.4
       Using mini_portile2 2.2.0
       Installing ntlm-http 0.1.1
       Installing webrobots 0.1.2
       Using bundler 1.14.6
       Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

       current directory:
       /opt/chef/embedded/lib/ruby/gems/2.4.0/gems/unf_ext-<IP_ADDRESS>/ext/unf_ext
       /opt/chef/embedded/bin/ruby -r ./siteconf20170816-11454-ekpbht.rb extconf.rb
       checking for -lstdc++... *** extconf.rb failed ***
       Could not create Makefile due to some reason, probably lack of necessary
       libraries and/or headers.  Check the mkmf.log file for more details.  You may
       need configuration options.

       Provided configuration options:
       	--with-opt-dir
       	--with-opt-include
       	--without-opt-include=${opt-dir}/include
       	--with-opt-lib
       	--without-opt-lib=${opt-dir}/lib
       	--with-make-prog
       	--without-make-prog
       	--srcdir=.
       	--curdir
       	--ruby=/opt/chef/embedded/bin/$(RUBY_BASE_NAME)
       	--with-static-libstdc++
       	--without-static-libstdc++
       	--with-stdc++lib
       	--without-stdc++lib
       /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:468:in `try_do': The compiler failed
       to generate an executable file. (RuntimeError)
       You have to install development tools first.
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:553:in `try_link0'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:568:in `try_link'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:786:in `try_func'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:1013:in `block in have_library'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:956:in `block in checking_for'
       from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:351:in `block (2 levels) in
       postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:321:in `open'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:351:in `block in postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:321:in `open'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:347:in `postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:955:in `checking_for'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:1008:in `have_library'
       	from extconf.rb:6:in `<main>'

       To see why this extension failed to compile, please check the mkmf.log which can
       be found here:

       /opt/chef/embedded/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0/unf_ext-<IP_ADDRESS>/mkmf.log

       extconf failed, exit code 1

       Gem files will remain installed in
       /opt/chef/embedded/lib/ruby/gems/2.4.0/gems/unf_ext-<IP_ADDRESS> for inspection.
       Results logged to
       /opt/chef/embedded/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0/unf_ext-<IP_ADDRESS>/gem_make.out

       An error occurred while installing unf_ext (<IP_ADDRESS>), and Bundler cannot
       continue.
       Make sure that `gem install unf_ext -v '<IP_ADDRESS>'` succeeds before bundling.
       STDERR:
       ---- End output of bundle install ----
       Ran bundle install returned 5
       [2017-08-16T23:16:46+00:00] ERROR: Expected process to exit with [0], but received '5'
       ---- Begin output of bundle install ----
       STDOUT: Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
       installing your bundle as root will break this application for all non-root
       users on this machine.
       Fetching gem metadata from https://www.rubygems.org/..................
       Fetching version metadata from https://www.rubygems.org/..
       Resolving dependencies...
       Installing unf_ext <IP_ADDRESS> with native extensions
       Installing mime-types-data 3.2016.0521
       Installing net-http-digest_auth 1.4.1
       Installing net-http-persistent 2.9.4
       Using mini_portile2 2.2.0
       Installing ntlm-http 0.1.1
       Installing webrobots 0.1.2
       Using bundler 1.14.6
       Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

       current directory:
       /opt/chef/embedded/lib/ruby/gems/2.4.0/gems/unf_ext-<IP_ADDRESS>/ext/unf_ext
       /opt/chef/embedded/bin/ruby -r ./siteconf20170816-11454-ekpbht.rb extconf.rb
       checking for -lstdc++... *** extconf.rb failed ***
       Could not create Makefile due to some reason, probably lack of necessary
       libraries and/or headers.  Check the mkmf.log file for more details.  You may
       need configuration options.

       Provided configuration options:
       	--with-opt-dir
       	--with-opt-include
       	--without-opt-include=${opt-dir}/include
       	--with-opt-lib
       	--without-opt-lib=${opt-dir}/lib
       	--with-make-prog
       	--without-make-prog
       	--srcdir=.
       	--curdir
       	--ruby=/opt/chef/embedded/bin/$(RUBY_BASE_NAME)
       	--with-static-libstdc++
       	--without-static-libstdc++
       	--with-stdc++lib
       	--without-stdc++lib
       /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:468:in `try_do': The compiler failed
       to generate an executable file. (RuntimeError)
       You have to install development tools first.
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:553:in `try_link0'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:568:in `try_link'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:786:in `try_func'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:1013:in `block in have_library'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:956:in `block in checking_for'
       from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:351:in `block (2 levels) in
       postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:321:in `open'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:351:in `block in postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:321:in `open'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:347:in `postpone'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:955:in `checking_for'
       	from /opt/chef/embedded/lib/ruby/2.4.0/mkmf.rb:1008:in `have_library'
       	from extconf.rb:6:in `<main>'

       To see why this extension failed to compile, please check the mkmf.log which can
       be found here:

       /opt/chef/embedded/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0/unf_ext-<IP_ADDRESS>/mkmf.log

       extconf failed, exit code 1

       Gem files will remain installed in
       /opt/chef/embedded/lib/ruby/gems/2.4.0/gems/unf_ext-<IP_ADDRESS> for inspection.
       Results logged to
       /opt/chef/embedded/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0/unf_ext-<IP_ADDRESS>/gem_make.out

       An error occurred while installing unf_ext (<IP_ADDRESS>), and Bundler cannot
       continue.
       Make sure that `gem install unf_ext -v '<IP_ADDRESS>'` succeeds before bundling.
       STDERR:
       ---- End output of bundle install ----
       Ran bundle install returned 5
       [2017-08-16T23:16:46+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
       [2017-08-16T23:16:46+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

Yes, this is what happens. You would have to install whatever build environment you wanted to use before running Chef if you want to support this. We have no plans to do anything more automated than what is there now. I would recommend finding a non-ext gem to use instead, or diving into the wild world of binary (i.e. pre-compiled) fat gems.

That makes me sad, but okay. I'll look into the precompiled gem option. Thanks.

You might want to look at the selenium-webdriver gem, or possibly Capybara.


mangled percent sign in strings

6to5: 2.13.1
node.js: v0.11.14
Ubuntu 14.04
percent.js
sprintf('productivity in %d has increased by 30%%', year);
sprintf("productivity in %d has increased by 30%%", year);

output (6to5 ./percent.js)
"use strict";

sprintf("productivity in %d has increased by 30%", year);
sprintf("productivity in %d has increased by 30%", year);

The trailing % has gone AWOL (which, in this case, breaks the format string).
It seems to run OK under 6to5-node.

Fixed via ca41612109883b2bfd3979cc9afa63d372805c03 and released as of 2.13.2, thanks!


generate help for custom commands and groups

Thanks for the initial PR @polatengin! As we discussed this, the PR is currently a draft PR until we get a few more items in.
A few items that need to be added to this PR:

[ ] Please add a test to ensure that groups and custom commands have the correct description for using.
[ ] Please add the ability to specify a description for group names.
[ ] Please list out individual group commands in a list per the proposal md in the docs folder.
[ ] If commands.yaml is loaded, please list the currently used command in the usage.

hey @hattan , I checked the acceptance criteria of the user story , it seems it's done.
Could you please double-check and review the PR?
Thanks,
Engin :)

@polatengin . One more small issue, please update the User Guide Document to reflect the changes in the commands.yaml schema.


New: Add file picker to the export file input

For UI changes, can you add a screenshot of how the change looks?

sure thing.
Clicking on the file path input opens the file dialog.
The input itself is read-only.


Runserver support?

I'd love to have runserver work without migrations -- is this possible? From skimming the code it looks relatively simple, but I figured I'd make an issue to ask first.

I encourage you to fork the project and republish it as
django-without-migrations.
I don't think it's a good dev process to build without migrations, because
I always want my dev environment to be a replica of my production
environment.
But feel free to do it. That's the open source spirit.
On Thu, Aug 12, 2021 at 10:09 AM Christian Bundy @.***>
wrote:

I'd love to have runserver work without migrations -- is this possible?
From skimming the code it looks relatively simple, but I figured I'd make
an issue to ask first.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/henriquebastos/django-test-without-migrations/issues/22,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAC6IUNWIWP6YMVXSETWN3T4PB2BANCNFSM5CBFBY2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

Sure, thanks for the quick feedback!


Full Release version

I notice that this project has been in beta releases for over 1 year - is there any reason for this - and when do you expect to release a non-beta version

@MarkAPhillips Soon - there have been a number of issues resolved in that year with the beta release, mostly around the build output. I've been watching the number of users on the beta release and once I feel confident enough users have tested it and the kinks have been worked out it will become the main release. It has been a few weeks since the last bug was reported so it may be ready now, and there's almost as many people using the beta as there is using the current stable.

Based on looking at the stats I've pushed a 9.0.0 stable - thanks for the reminder!


Merge external direct magic strings into direct magic strings

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik<EMAIL_ADDRESS>

Instead of the a 1 free bit gain for other direct string types there is some performance gain, also the binary size is decreased as well:

Benchmark
Perf (sec)

3d-cube.js
0.798 -> 0.795 : +0.391%

3d-raytrace.js
0.965 -> 0.957 : +0.807%

access-binary-trees.js
0.528 -> 0.524 : +0.775%

access-fannkuch.js
1.920 -> 1.898 : +1.154%

access-nbody.js
1.013 -> 1.009 : +0.380%

bitops-3bit-bits-in-byte.js
0.470 -> 0.470 : -0.044%

bitops-bits-in-byte.js
0.644 -> 0.645 : -0.214%

bitops-bitwise-and.js
0.891 -> 0.896 : -0.614%

bitops-nsieve-bits.js
1.126 -> 1.101 : +2.201%

controlflow-recursive.js
0.342 -> 0.326 : +4.476%

crypto-aes.js
0.808 -> 0.809 : -0.027%

crypto-md5.js
0.538 -> 0.536 : +0.460%

crypto-sha1.js
0.539 -> 0.539 : +0.059%

date-format-tofte.js
0.725 -> 0.724 : +0.120%

date-format-xparb.js
0.502 -> 0.501 : +0.269%

math-cordic.js
1.122 -> 1.123 : -0.019%

math-partial-sums.js
0.695 -> 0.702 : -1.029%

math-spectral-norm.js
0.472 -> 0.471 : +0.087%

string-base64.js
1.338 -> 1.345 : -0.509%

string-fasta.js
1.290 -> 1.269 : +1.619%

Geometric mean:
+0.524%

Binary (bytes)
master(a1fdcf06cb)
patch(88dcb5d264)
Diff

size
132664
132664
0 bytes

.rodata
11255
11255
0 bytes

.dynstr
262
262
0 bytes

.rel.plt
176
176
0 bytes

.interp
25
25
0 bytes

.dynsym
384
384
0 bytes

.gnu.hash
188
188
0 bytes

.text
114404
114268
-136 bytes

.comment
59
59
0 bytes

.shstrtab
250
250
0 bytes

.data
8
8
0 bytes

.ARM.exidx
8
8
0 bytes

.rel.dyn
16
16
0 bytes

.init
12
12
0 bytes

.got
104
104
0 bytes

.plt
288
288
0 bytes

.note.gnu.build-id
36
36
0 bytes

.note.ABI-tag
32
32
0 bytes

.gnu.version_r
64
64
0 bytes

.bss
1575168
1575168
0 bytes

.fini
8
8
0 bytes

.gnu.version
48
48
0 bytes

.fini_array
4
4
0 bytes

.init_array
4
4
0 bytes

.dynamic
232
232
0 bytes

.eh_frame
4
4
0 bytes

.ARM.attributes
51
51
0 bytes

.jcr
4
4
0 bytes

The jerry-main and sunspider test suite does not really use external magic strings. It would be great to use a custom example which highly depends on external magic strings.

@zherczeg I've added the missing documentation.
@LaszloLango You can find the performance results here. This file contains the runtime change of the sunspider tests. These results were measured on RPi2 via using snapshots.

I don't see the doc update. Does this affect snapshots btw?

@zherczeg I've added the missing API doc, I think it may affect the snapshot so I increased the snapshot version number.

@rerobika IoT.js does not work for me with this PR. Could you investiage it? It highly depends on external magic strings, so it might reveal a bug.

@LaszloLango Thanks for the review I'll take a look at it.


Updated alevin workflows to include most recent Salmon 1.4.0/Alevin-Fry

Related to #51. I updated the current workflow for Alevin, workflows/alevin-quant/run-alevin.nf to include most up to date Salmon container. Tag: 1.4.0--h84f40af_1 found here: https://quay.io/repository/biocontainers/salmon?tab=tags
Additionally, I added a new workflow that uses Alevin-fry and follows the steps outlined in the documentation here.
A few places that had options for arguments that I wasn't 100 percent positive about in building the alevin-fry workflow:

After alignment, there is a RAD file (similar to a BAM file) that is output and used as input for the next step to generate a a list of "true" cells that are identified. At this point, reads are filtered based on sense/ anti-sense alignment, but you can include an option to keep all alignments. Currently, I left the option as "either", meaning reads will not be filtered by directionality. However, cellranger does filter and only include reads in the sense direction. I couldn't find Should that also be the approach used here?

Which option do we want to use to determine the "true" barcodes? I went with the --knee-distance option which uses an iterative algorithm to look for an optimal number of barcodes/cell by looking for the knee in the cumulative distribution function graph. It appears that this is slightly different from using --expect-cells which uses the number of cells as a hint to choose the cutoff around that value. This option seemed like the most standard and is similar to cellranger and kallisto (from what I can interpret, except they use the 10x whitelist and this method does not). The other two options require either a desired number of cells (--force-cells) or a provided list of true barcodes to search for and didn't seem feasible for a reproducible pipeline.

For the quantification step there are multiple different resolution strategies for gene quantification that could be chosen: I have it currently set up to use the full resolution strategy as that is the default. This strategy builds a graph among transcripts with UMI's within an edit distance of 1. It looks for a parsimonious cover for the graph, and then looks to assign the deduplicated reads to genes with the most parsimonious cover. For reads that are multi-mapping, they are probabilistically resolved using an expectation maximization algorithm. More details about quant methods can be found here.  This is one of the differences across the methods as cellranger throws out reads that map to multiple genes and Kallisto uses a different UMI collapse method than alevin. There are similar resolution methods to cellranger that alevin-fry has that we could use for direct comparison? Or keep with the defualt as that may add to part of the specific benefit of using Alevin over other methods?

Currently performing a test run on AWS batch on 2 samples using the new run-alevin-fry.nf workflow to ensure that it works before asking for a formal review.

After a lot of review, the workflow works for the most part. Generation of the RAD files and collation of the RAD file is successful, but it is currently failing at the quant step. The error that I am getting is because of a mismatch between the --tg-map and the header of the RAD file, even though I am using the same file for the salmon alevin alignment step and for the alevin-fry quant step. I have attached the output of the collate process here for reference.

After looking into this issue, it appears that someone else also had this same issue, with no response.
I currently have been using publishDir in all processes so that I can monitor the output as things are working/ not working on S3, but plan to remove that once we know it runs smoothly and only output the quant files. If you go to s3://nextflow-ccdl-results/scpca/alevin-fry-quant/SCPCR000001-txome_k31_full_sa you should see all of the output files up until the collated RAD file map.collated.rad, showing that the processes before alevin quant were working.

After looking into this issue, it appears that someone else also had this same issue, with no response.

My first reaction to this is to say we drop this branch for now. The proposed advantages of alevin-fry do not yet seem to be large enough to be worth spending our time on, given that it is still in fairly early development. In theory, it provides some flexibility advantages, but we are unlikely to use those.

My first reaction to this is to say we drop this branch for now. The proposed advantages of alevin-fry do not yet seem to be large enough to be worth spending our time on, given that it is still in fairly early development. In theory, it provides some flexibility advantages, but we are unlikely to use those.

I asked @allyhawkins what including this method gets us at this stage in development via Slack and it sounds like we could in theory get highly similar results to CellRanger ("CR-like") with a lower RAM footprint and in less compute time. That is appealing, but I tend to agree that we should put this on hold for now. Getting benchmarking done with more established methods is a higher priority! I think it's probably fine to leave this open as a draft PR.

Hi all,
I was just pointed here by @cgreene.  Sorry I didn't come across this earlier.  I will loop in some folks from.the lab and figure out what's up.  I think there are potentially substantial benefits to alevin-fry depending on what the current workflow is (e.g. very big time/mem reductions compared to e.g. CellRanger).

Hi all,
I was just pointed here by @cgreene. Sorry I didn't come across this earlier. I will loop in some folks from.the lab and figure out what's up. I think there are potentially substantial benefits to alevin-fry depending on what the current workflow is (e.g. very big time/mem reductions compared to e.g. CellRanger).

Hi @rob-p, thanks for weighing in, and I look forward to hearing back. My comments about benefit were relative to alevin (all-in-one); we had already seen that alevin with a full decoy index was giving results quite similar to CellRanger with a substantially lower footprint. Are there particular benefits now to alevein-fry over alevin that we should be aware of?

Hi @jashapiro,
Thanks for the additional context.  Currently, there are some benefits of alevin-fry over alevin (and also some benefits of alevin over alevin-fry, though many of those are likely to be temporary).  The biggest potential benefits of alevin-fry over alevin are related to the memory usage, and also to the runtime.  Because alevin retains an internal representation mapping barcodes to the equivalence classes and UMIs that occur within them, the memory usage grows in the distinct number of equivalence classes and UMIs observed.  On the other hand, alevin-fry separates out this step (via the collate command) so that the data relevant to cells can be deduplicated and processed independently.  This means that the memory usage can be very low.  For example, while there is no full pre-print on alevin-fry (since, as you note, it's still under active development), we explore the memory usage when mapping against a decoy-free index (i.e. just the transcriptome) in this poster.  The memory usage of alevin-fry comes in around 3-4G, is largely independent of the number of cells, and usually the peak memory usage happens during the mapping phase.  The other main benefits of alevin-fry are that it exposes more different options for different steps of the pipeline than does alevin.  For example, you can choose selective-alignment or pseudoalignment for the mapping algorithm, choose among numerous different algorithms for detection of high-quality cells (per the original post here by @allyhawkins, we have implemented an "expect-cells" rule in the develop branch of alevin-fry that mimics the rule used by STARsolo, which itself does something very similar to cell-ranger).  Finally, there are many different methods for the resolution of UMIs, including the "full" method (used in alevin) that combines parsimonious resolution with an EM for multi-gene UMIs, a "parsimony" method that resolves UMIs using the minimum cardinality cover but discards gene ambiguous UMIs, as well as a number of simpler algorithms that don't attempt to account for sequencing errors in UMIs but still expose the optional ability to use an EM for gene-ambiguous UMIs.  In addition to all of this, we are adding more capabilities and options to alevin-fry, which will likely live there (rather than be backported to alevin). So the other main benefit of alevin-fry over alevin is that it is where interesting / useful new features are likely to land.
Of course, given that alevin-fry is still in active development, there are a few features that alevin has that we haven't yet ported to alevin-fry (or that may never make it).  For example, alevin-fry cannot currently take advantage of a decoy-aware index, as the mapping code that is used to generate RAD files does not have the decoy aware modifications implemented yet (this is likely the source of the error reported by @allyhawkins above and I'll expand on that a bit below).  Also, alevin has the ability to do it's own "second round" intelligent permit-listing after the initial counts have been determined, and this is not currently implemented in alevin-fry.  Likewise, alevin implements the optional dumping of a number of features (e.g. the arboresences used during its UMI resolution algorithm), and it is unclear if all of this functionality will eventually be ported to alevin-fry or not; it really depends on the user desire for specific features.  There may be a few other bonus features that I've not listed here.
So, regarding the issue that @allyhawkins ran into, I believe this is due to the use of a decoy-aware index when attempting to perform the collation.  As I mentioned above, alevin-fry does not yet support mapping against a decoy-aware index (this is now reflected in the documentation).  Since there are a few rules, based on selective-alignment scores, that are used to determine when a fragment maps to a decoy versus a valid target, this filtering needs to be done during the mapping itself.  I believe what is happening in the case above is that the RAD file is outputting alignments both against the valid target set as well as against the decoys (i.e. the decoys are listed in the RAD file header).  Then, the --tg-map only lists the valid transcripts.  Hence, there is a mismatch between the RAD header and the transcript to gene map.  In this particular case, the decoy mappings shouldn't appear in the RAD file and the decoy sequences shouldn't appear in the header.  However, they shouldn't be filtered at this stage, since all of the relevant scoring information used to properly filter decoy mappings has already been lost.  Where the decoy-aware transcriptome is already supported (e.g. in salmon in bulk mode), this is all taken care of transparently, which is why e.g. decoy sequences don't show up in the quant.sf file.  So, I think the best (and currently the only valid) solution to that problem is to have the alevin-fry pipeline make use of a non decoy-aware index.
I realize I've written a lot here, so I'll stop now.  However, I'm happy to follow up or answer any questions you might have about what I've written above or about alevin / alevin-fry more generally!

Hi @rob-p, thanks so much for taking the time to look into this and for your detailed response! I need to take some time to digest all of this insight that you've provided, but it does sound like there are both pros and cons to using alevin-fry vs. alevin, and that if we are to move forward with testing it for our purposes, we should at least alter it to use a non-decoy aware index.
I think the biggest attraction to us would be the lower RAM and time, while also maintaining similarity to widely used methods like cellranger. If that is the case with using the non-decoy aware index in alevin-fry, (which based on the notes from @rob-p it sounds like this is correct?) then perhaps it is worth keeping open as a potential option.

Hi @allyhawkins,  Yes; I think this is right.  Just shifting to the non decoy-aware index should clear up the issue you reported above.  This will clear the way for you to test out some of the different mapping and UMI resolution methodologies.  The fastest pipeline would be something like what is described in this tutorial, but then different options can be explored based on how those results look compared to your "reference" counts etc.

Thanks @rob-p!

Wow! Thanks @rob-p, that was really useful info!

Thanks again @rob-p for all the help!
@jashapiro I went ahead and changed to the non-decoy aware index. It all works like it should now and is set for review whenever.


Palladium fantasy 1 e

Changes / Comments
Added ammo count, range, and rate of fire to the roll template for the ranged attack section.  Removed the spinner arrows from the number inputs.
Roll20 Requests
Comments are very helpful for reviewing the code changes. Please answer the relevant questions below in your comment.

[ ] Does the pull request title have the sheet name(s)? Include each sheet name.
[ ] Is this a bug fix?
[ ] Does this add functional enhancements (new features or extending existing features) ?
[ ] Does this add or change functional aesthetics (such as layout or color scheme) ?
[ ] If changing or removing attributes, what steps have you taken, if any, to preserve player data ?
[ ] If this is a new sheet, did you follow Building Character Sheets standards ?

If you do not know English. Please leave a comment in your native language.

Character Sheet Info Roll20 Internal Use only.


Prevent IndexError if strip_quotes returns empty string

If strip_quotes returns an empty string this
for i, pos in enumerate((0, -1)):
    if near[pos].isalnum() or near[pos] == '_':

will fail with an IndexError:
Traceback (most recent call last):
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/lint/queue.py", line 65, in loop
    self.lint(view_id, timestamp)
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/lint/queue.py", line 111, in lint
    self.callback(view_id, timestamp)
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/sublimelinter.py", line 119, in lint
    Linter.lint_view(view, filename, code, hit_time, callback)
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/lint/linter.py", line 929, in lint_view
    linter.lint(hit_time)
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/lint/linter.py", line 1487, in lint
    col = self.highlight.near(line, near, error_type=error_type, word_re=self.word_re)
  File "/home/silvasur/.config/sublime-text-3/Packages/SublimeLinter/lint/highlight.py", line 334, in near
    if near[pos].isalnum() or near[pos] == '_':
IndexError: string index out of range

This commit fixes this

Can you illustrate with a situation where this would occur?

(Sorry, should have documented this when I opened the issue)
For example when you have this invalid PHP file:
<?php
foo("" "")

php -l will then return this error:
PHP Parse error:  syntax error, unexpected '""' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ')' in /tmp/foobar.php on line 2

SublimeTextLinter will then unquote the "" part after the unexpected, which gives an empty string leading to the exception. SublimeTextLinter will then not recover, even after you fix the error in the PHP code.
Seems to always happen if you place an unexpected empty string "" somehere, which can happen easily (forgetting a separating , for example)
Linter Plugin used: SublimeLinter-php.
PHP Version:
$ php -v
PHP 7.1.11-1+ubuntu14.04.1+deb.sury.org+1 (cli) (built: Oct 27 2017 14:28:45) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.11-1+ubuntu14.04.1+deb.sury.org+1, Copyright (c) 1999-2017, by Zend Technologies

Perhaps this is actually an issue in the PHP linter plugin? Perhaps it should have returned '""' and not only ""? Not sure. If you think it's the PHP linter plugins fault, I can open an issue there.

Well it’s never a bad idea to guard against weird input. I’ll test this a bit and then merge. Thanks!


Refactor the components.resolveExpectations function

Most tests act on a single, specific DOM element and return a single, specific result.
A few tests require multiple DOM elements to set up (such as header cardinality). Some tests return multiple results for a single elements with varying results -- color.js is a great example.
Right now we're using a system of DOM attributes, string parsing and the components.resolveExpectations function to map test results to the right element and filter for the desired result when multiple results arise.
We can certainly do this better in a way that isn't so incredibly magical. The testrunner is a special case because we need to really boil down the cases to a single result (or do we?). The refactor should keep in mind that test writers will not necessarily understand the complexities of the testrunner, so the solution should be easy to follow for non-core developers.

This has been pulled out of the master branch.


Error in building app once upgrade ios platform version to 4+ when plugin is installed

Expected Behaviour
Actual Behaviour
My Ionic App is on ios version 3.9.2. When trying to install the plugin, it skips ios.
Then I updated ios to 4.0.1. There it installed but when I build the app it gave the following error:
** BUILD FAILED **
The following build commands failed:
CompileC build/testcordova4.build/Debug-iphonesimulator/testcordova4.build/Objects-normal/i386/MainViewController.o testcordova4/Classes/MainViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
ERROR building one of the platforms: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/cordova/build-debug.xcconfig,-project,testcordova4.xcodeproj,ARCHS=i386,-target,testcordova4,-configuration,Debug,-sdk,iphonesimulator,build,VALID_ARCHS=i386,CONFIGURATION_BUILD_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/sharedpch
You may not have the required environment or OS to build this project
Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/cordova/build-debug.xcconfig,-project,testcordova4.xcodeproj,ARCHS=i386,-target,testcordova4,-configuration,Debug,-sdk,iphonesimulator,build,VALID_ARCHS=i386,CONFIGURATION_BUILD_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/sharedpch
Are you user https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/PLATFORM_SUPPORT.md is updated?
Reproduce Scenario (including but not limited to)
Steps to Reproduce
Using MAC OS,
update cordova and ionic using;
sudo npm install -g cordova ionic
Create a new app.
Add ios platform.
Update the ios platform to ios 4.0.1
Install the plugin.
Build the app - ionic build ios
Above error comes
Platform and Version (eg. Android 5.0 or iOS 9.2.1)
ios platform 4.0.1
Sample Push Data Payload
Sample Code that illustrates the problem
Logs taken while reproducing problem
** BUILD FAILED **
The following build commands failed:
CompileC build/testcordova4.build/Debug-iphonesimulator/testcordova4.build/Objects-normal/i386/MainViewController.o testcordova4/Classes/MainViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
ERROR building one of the platforms: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/cordova/build-debug.xcconfig,-project,testcordova4.xcodeproj,ARCHS=i386,-target,testcordova4,-configuration,Debug,-sdk,iphonesimulator,build,VALID_ARCHS=i386,CONFIGURATION_BUILD_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/sharedpch
You may not have the required environment or OS to build this project
Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/cordova/build-debug.xcconfig,-project,testcordova4.xcodeproj,ARCHS=i386,-target,testcordova4,-configuration,Debug,-sdk,iphonesimulator,build,VALID_ARCHS=i386,CONFIGURATION_BUILD_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/kosalap/Documents/Development/Test Apps/testcordova4/platforms/ios/build/sharedpch

@razmik did you get this resolved?

No couldn't. I am now using earlier version of camera plugin.

@razmik which camera plugin?

Sorry, my bad.
I'm now using https://github.com/phonegap/phonegap-plugin-push 1.5.3, which works.

@razmik I think if you remove the platform and plugin, then add them back it should work but I'll close this issue for now.

Look like I have a same issue . And it is work when I  remove the platform and plugin, then add them back, but it will back again.


docs: include type: Opaque in secret projection examples

fixes #50

LGTM - makes our docs look like our examples and also probably makes our docs copy-pastable.


feat: add ovh/venom

ovh/venom: Venom is a CLI that aim to create, manage and run your integration tests with efficiency
$ aqua g -i ovh/venom

How to confirm if this package works well
Reviewers aren't necessarily familiar with this package, so please describe how to confirm if this package works well.
Please confirm if this package works well yourself as much as possible.
Command and output
$ venom
Venom aim to create, manage and run your integration tests with efficiency

Usage:
  venom [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  run         Run Tests
  update      Update venom to the latest release version: venom update
  version     Display Version of venom: venom version

Flags:
  -h, --help   help for venom

Use "venom [command] --help" for more information about a command.

Thank you always!

Released. https://github.com/aquaproj/aqua-registry/releases/tag/v3.140.0


Calling sap

Hi Anat and thanks for producing this analyzer.
Your article states that you use yap (yet another parser) for morphological analysis and disambiguation but I didn't see any follow-up on the tokenizer.
Can you direct me to the place in the scripts where you call yap?
I'm especially intrigued as yap was written in GO and I did not see it in the dependencies list.

Presumably, the files data/morph_* were processed with some version of YAP. The use of YAP is obviously not part of this repository as it currently stands.


Minor: Add sql test for UNION / UNION ALL + plans

Which issue does this PR close?
Related to https://github.com/apache/arrow-datafusion/pull/7695  and https://github.com/apache/arrow-datafusion/issues/7786
Rationale for this change
Add test for https://github.com/apache/arrow-datafusion/issues/7786 as well as an end to end verification for https://github.com/apache/arrow-datafusion/pull/7695
What changes are included in this PR?
2 new tests
Are these changes tested?

Are there any user-facing changes?

Perhaps I'm wrong but why we have 2 set of AggregateExecs....

Because we haven't implemented https://github.com/apache/arrow-datafusion/issues/7786 yet :) Though it appears that @maruschin is working on it in https://github.com/apache/arrow-datafusion/pull/7788

Thanks @comphead  and @jackwener


Fix image device size cap at 1504px

Description
Next.js docs: https://nextjs.org/docs/pages/api-reference/components/image#devicesizes
The default deviceSizes includes device sizes beyond the max width of 1504px that we use, causing images (especially heroes) to load a larger image than needed. Overriding the default deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840], with deviceSizes: [640, 750, 828, 1080, 1200, 1504], brings the image sizes back down to what we're used to, if not better.
Example: Homepage hero -> Production 800 kB, Next.js dev preview 2.7 MB, locally with above changes 556 kB
This does however reduce the quality of the image slightly... Our Next.js preview site currently has slightly sharper images than production, and the above change makes them look like they do in production again. I tried adding quality={100} to these images to see if that would help (since currently it's using a quality of 75), but it doesn't seem to change anything. The type seems to be what's doing it, as the above changes make them load as webp instead of png (which is parity with production)
Changes

Overrides default decideSizes for images, capping largest device size at 1504px (global website max width)
Reduces image sizes which were coming in significantly larger than in previous Gatsby repo

Great job, I just tested adding 1920 and images look a bit sharper while maintaining the size way below production current ones, I think it should be added, eg: with /learn page hero below (-53% size reduction)
FORK: 361kb

PROD: 768kb

Awesome!


New editor shortcut disappears after restart

Tested versions
v4.3.stable.official [77dcf97d8]
System information
Godot v4.3.stable - Pop!_OS 22.04 LTS - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Laptop GPU - AMD Ryzen 7 5800H with Radeon Graphics (16 Threads)
Issue description
I go to Editor -> Editor Settings -> Shortcuts, configure View Gizmos to keyboard key J.
This binding works well for current session, but when I restart Godot it disappears.
Steps to reproduce

Go to Editor -> Editor Settings -> Shortcuts
Configure View Gizmos to keyboard key J
Restart editor
Check the key binding for View Gizmos (it's empty)

Minimal reproduction project (MRP)
N/A

I cannot reproduce this issue on windows 11.

I cannot reproduce this issue on windows 11.

If that's important, Godot is installed through Steam.

@syntaxerror247
Update! The bug described in initial post for me happened in the fresh state of editor where no other settings were changed. Today I tried something different: after setting shortcut, I went to the General tab and changed some checkbox there. After that I restarted Godot and my shortcut is still there. Now when I only change shortcuts they are saved properly. So, my hypothesis is: maybe it has something to do with empty config. Like, when config is empty shortcuts are not saved, when it exists, they are. This is only hypothesis.


Support named constants, or imports?

Category
Cedar language or syntax features/changes
Describe the feature you'd like to request
I have some Cedar policy files with multiple permit statements referring to the same principal condition, eg. principal in AWS::IDC::Group::"<some uuid>"  // the xyz team. They're separated into multiple statements in order to provide more fine-grained @advice comments as well as sometimes to add extra conditions.
I'm wondering what the recommendation is for minimizing duplication of this group ID. It seems like it would be nice to be able to define a named binding somewhere, either in the same file or a standalone file, that could then be referred to by name in all these reference points, so the actual ID only need be spelled out once.
Describe alternatives you've considered

Status quo: just duplicate the raw IDs everywhere they're needed.
Introduce some preprocessing step to find-and-replace words like @@@XYZ_GROUP@@@ with their value, but this introduces extra moving pieces/state that is undesirable.

Additional context
No response
Is this something that you'd be interested in working on?

[ ] 👋 I may be able to implement this feature request
[ ] ⚠ This feature might incur a breaking change

Thanks for submitting this request! I've tagged this requires-RFC because it would substantial change to the language which we wouldn't make without careful planning. I think you're actually asking for a restricted version of the macro mechanism proposed in cedar-policy/rfcs#61. We're not actively considering that proposal at the moment, but we haven't rejected it completely either. Definitely restart discussion there if that proposal sounds useful.
Depending on your exact use case, we might be able to suggest a nicer alternative. In your example, the uuid appears in the principal constraint. If it only occurs there (or in the resource constraint), then you may be able to use policy templates as a safe alternative to find-and-replace. E.g., given a template permit(principal in ?principal, ...); the Cedar sdk provides a method to construct a template-linked-policy by replacing ?principal with a particular entity uid. If templates don't quite meet your needs, you could restart discussion on some extension to templates we previously considered but decided not to accept: templates groups, and template slots in policy conditions.