addr2line is slower than the binutils version

From https://github.com/gimli-rs/gimli/issues/53.
One probable optimization will be to cache the parsed .debug_line rows.

Another I'm looking into right now is to use a BTreeMap indexed by base address to keep the Units in. By then looking into the range (-, addr] and stepping backwards through the iterator, we should be much more efficient about doing the lookups.

One thing that would speed things up significantly is if we had a way to binary search the line rows within a particular Unit. Currently, we scan left to right and stop when the next entry is larger than the address we're looking for, but if we could efficiently skip backwards and forwards (like in an array), this would be much faster. @fitzgen, is there a way to make the StateMachine that's returned by gimli::LineNumberProgramHeader::rows() allow efficient seeking, not just one-at-a-time processing?

@fitzgen, is there a way to make the StateMachine that's returned by gimli::LineNumberProgramHeader::rows() allow efficient seeking, not just one-at-a-time processing?

I don't think so. The address, line number, source file, etc matrix is encoded and compressed into a bytecode program, and StateMachine is interpreting that program to yield one row of the matrix at a time. Each row of the matrix requires information from the previous one, since (per spec) all the bytecodes mutate the current row being reconstructed in place, and often deal with relative numbers and deltas rather than absolute numbers, since they can be used to encode the matrix more compactly.

Also, FWIW, it isn't clear that we are still really slower than the canonical binutils addr2line. We would certainly benefit from more benchmarking.

And from profiling, most of the time seems to be spent in iterating over rows(). It's unfortunate we can't skip through it.. I don't really want to extract them all at start-up time, as that would waste significant memory, plus slow down applications that don't do a lot of lookups. Maybe a simple addr->file cache is sufficient.

Thanks for doing additional profiling!

One further thought on optimizing the walking of line rows: what if, when we walk it, we keep track of a couple of byte offset + address tuples at fixed intervals along the way. That way, the next time we walk, we can binary search those recorded points, and only do a linear scan from the last point before the address we're looking for. If an address ends up having to walk beyond the last recorded point, it records more points as it walks. The interval could be tuned such that the number of stored points is relatively small, and this would still provide a massive (probably order of magnitude) decrease in runtime. Thoughts @philipc @fitzgen ?

I think we could perhaps clone the line number StateMachine periodically, to bound the amount of recomputation we need to do.
We can't jump into the middle of a line program because there is implicit state built up and referenced in later instructions. However, cloning the StateMachine should work, as long as we don't share headers between clones, as those get mutated by some line number instructions.
Caching all line rows is overkill and I don't think it is the approach to take. There's a lot of rows and the vast majority of them won't be reused, meaning we are wasting time and space by cloning and caching all of them.

Yeah, of course, I was still imagining that we only cache every nth row. But this still enables doing a binary search to get most of the way to the address in question, which should improve performance drastically. How expensive is StateMachine to clone? We'd need to pick a reasonable n. Also, should we do this eagerly (when the Mapping is created), upon request (when the user calls optimize()), or lazily (as we traverse)? If we do it lazily, should it be optional?

But this still enables doing a binary search to get most of the way to the address in question, which should improve performance drastically.

And if you are only saving every nth row, we'll still need to be able to continue evaluation of the line number program from the closest preceding row snapshot'd when we don't have an exact match in the binary search. The state required to continue evaluation is exactly StateMachine, so I think we are reaching consensus.

How expensive is StateMachine to clone?

Well, we don't actually even derive Clone on it yet, but just because we haven't needed it, not because there is anything that is fundamentally un-Clone-able.
So I guess the answer is "measure and we'll find out" ? :)

We'd need to pick a reasonable n.

Ideally we would do something like sqrt(n) where n is number of rows in the program. The sqrt is non-constant so we actually get a big-O improvement, not just a constant shave. Super important ;)
However, we don't know the number of rows in the program (or even the number of instructions) until we run it (or parse, for instructions).
I think it would be fine if we looked at the average number of bytes per row in line number programs in the wild, and use that number in addr2line to estimate what n is in the given unparsed line number program, and clone the StateMachine every sqrt(estimate(n)) rows.
Or maybe this is over-engineering and we can just do every 100 rows or something :P

Also, should we do this eagerly (when the Mapping is created), upon request (when the user calls optimize()), or lazily (as we traverse)? If we do it lazily, should it be optional?

I would say lazily and if we do it optionally (I don't have a strong opinion) then it is time to make a builder struct for all the options to keep them sane and not have tons of bool parameters for every function.

Caching all line rows is overkill and I don't think it is the approach to take.

I think it's always good to look at what existing DWARF implementations do. That doesn't mean we need to copy what they do, but if it's code that's in production use then it's a good baseline.
The elfutils addr2line parses all of the line number information for a CU into an array (which it caches), and then does a binary search in that array for each address.
I didn't completely read what gdb does. It seems to parse and cache all the line number information, but it also splits up the rows into one array per file.

How expensive is StateMachine to clone?

It's not particularly cheap, because it does include the LineNumberProgramHeader, which in turn includes vectors of files and directories.
My feeling is that we should start by caching every line row. This should be fast to implement and gives a baseline. We can then investigate ways to improve that further (including to reduce memory usage), such as the other methods suggested here.

Another possibility is to cache the starting offset and address range of each sequence. This is because the DW_LNE_end_sequence opcode resets the state machine, so we wouldn't need to save the full state. So then you could binary search for the sequence, and evaluate from there.

@fitzgen That seems pretty reasonable. I think we should start with just a fixed n, and then make it dynamic after evaluating if it actually helps.
@philipc It's interesting that addr2line actually does a binary search -- their performance doesn't suggest that that's the case. When you say "cache every row", what information are you intending to cache? (addr, file-ptr, lineno)? That's potentially a lot of extra state to create, and it is certainly a significant step away from the gimli zero-copy starting point. Keeping the full information for every n'th row seems like it wouldn't actually help, since you then don't have a way of looking up the rows in between. Re: keeping byte offsets, this was basically my earlier suggestion in https://github.com/gimli-rs/addr2line/issues/2#issuecomment-265206815 of caching (address, byte offset) every n lines, and then start a new StateMachine from the offset closest by binary search. But from @fitzgen's comments, it seemed like there isn't a way to start the StateMachine at some arbitrary (but valid) byte offset?

Another possibility is to cache the starting offset and address range of each sequence. This is because the DW_LNE_end_sequence opcode resets the state machine, so we wouldn't need to save the full state. So then you could binary search for the sequence, and evaluate from there.

The one catch is that it doesn't reset the defined files. We might be able to special case, though.

@philipc thanks (as always) for digging into other code bases :)

It's interesting that addr2line actually does a binary search -- their performance doesn't suggest that that's the case.

That may be because I looked at the wrong addr2line :) I'll look at binutils addr2line later today.

When you say "cache every row", what information are you intending to cache? (addr, file-ptr, lineno)? That's potentially a lot of extra state to create, and it is certainly a significant step away from the gimli zero-copy starting point.

Basically that, but you may also need an end-sequence flag to handle gaps. Agree that it is a lot to cache, but whether that is a problem depends on whether your goal is high performance or low memory usage. I don't think it'll be significantly worse than caching every 100th state machine, but that is something to measure. zero-copy is a more relevant goal for the low level code. Avoiding unnecessary copies is always good, but avoiding all copies is not always the correct tradeoff. Making the low level parsing avoid copies does let you move that tradeoff decision to the higher level code though.

it seemed like there isn't a way to start the StateMachine at some arbitrary (but valid) byte offset

In general there isn't, but we could add support for restarting after DW_LNE_end_sequence opcodes.

The one catch is that it doesn't reset the defined files. We might be able to special case, though.

Yep. I think it is feasible to special case that, but it'll be a bit ugly.

Yep. I think it is feasible to special case that, but it'll be a bit ugly.

FWIW, I think we should investigate Cloneing before special casing. it might be that it isn't really a problem in practice, despite cloning Vecs. I suspect that the Vecs are not very large since each compilation unit ends up with its own line number program in practice, IIRC.

Once we have Clone I can take a quick stab at coding this up.

Once we have Clone I can take a quick stab at coding this up.

Derived clone in https://github.com/gimli-rs/gimli/pull/164

LGTM. Looking through StateMachine, it seems to me like the references yielded by StateMachine::next_row are actually really &'input. Is the reason we don't expose them as such simply that we don't want to use unsafe, or is there some deeper dependency I'm not seeing? If StateMachine actually just kept references internally (in addition to registers), cloning it would be much cheaper.
Alternatively, in addr2line, could I (just to try it) re-use the references yielded by StateMachine::next_row after that StateMachine has been dropped (or has just moved on)? If so, it would be pretty simple to approximate the solution we discussed with storing (addr, offset).

binutils addr2info caches all the line rows and does a binary search too.

Looking through StateMachine, it seems to me like the references yielded by StateMachine::next_row are actually really &'input.

StateMachine::next_row returns references to fields in StateMachine, so the lifetime of those references is not 'input. The values of the fields do only contain references that have a lifetime of 'input, but that would only be relevant if we returned copies of those values, instead of references to them.

If StateMachine actually just kept references internally (in addition to registers), cloning it would be much cheaper.

The problem is that StateMachine needs to add entries to the list of files in the LineNumberProgramHeader. If it only kept a reference to the header internally, then it would need to be a mutable reference, and I think that would prevent you cloning StateMachine at all.

Alternatively, in addr2line, could I (just to try it) re-use the references yielded by StateMachine::next_row after that StateMachine has been dropped (or has just moved on)?

If you use a borrow of something that has been dropped or mutated then you have memory unsafety. Perhaps I misunderstand what you are asking?

Ah, I didn't realize StateMachine had to modify LineNumberProgramHeader -- I thought it was a struct overlay of the memory mapped debug data, in which case caching the borrow of it would be safe (since it wouldn't be mutated). Given that it needs to be mutated, that is obviously not the case. Unfortunate..

I don't think we use struct overlays of memory mapped data anywhere in gimli, so the zero-copy is a bit of a lie there :) DWARF doesn't tend to allow overlays because it uses variable length encodings. We do use short lived values on the stack or in registers wherever possible though.

@philipc Mmm, I took the zero-copy too literally. I'm working on a patch to test the binary search idea now, and ran across the fact that there's no way to get the current LineNumberRow from a StateMachine, only its header. I can work around it, but might be a worthwhile addition (similar to EntriesCursor::current).


ISSUE: keeps showing wanting to update even though it is not installed

Describe the bug
A clear and concise description of what the bug is.
Environment (please complete the following information):

OS: [e.g. HassOS/Raspbian/CentOS] hassOS
Type of device: [e.g. RPi3/NUC/Synology] PC
Home Assistant version: [e.g. 0.105.5] latest
Hassio/Docker/Core?  hassio
Component version: [e.g. 0.1.2]

Logs
Paste your error logs here.
Screenshots
If applicable, add screenshots to help explain your problem.

won't fully remove from my system it quit working a while back so I gave up as there was no help here just want this crap off my system
Additional context
Add any other context about the problem here. Deleted all the folders I could find that had mail and packages in the name
Please add emails in plain/text format if possible and applicable.

Thought this was removed from my home assistant a while ago but it keeps persisting https://github.com/moralmunky/Home-Assistant-Mail-And-Packages/issues/809

this is a HACS bug

this is a HACS bug

Interesting none of the other integrations I removed stay persistent on updating

not stale and still persistent


Exclude VM scripts via skipFiles

Hi,
I'd like to make a feature request to exclude 'VM Scripts' that are dynamically created with eval() from the VS Code debugger as suggested by @roblourens here.
To make progress immediately, if a knowledgeable contributor can identify the code in the source, us open source users can start the grunt work of implementation.
Some reading, relevant discussion.
Thank you.

@sabrehagen thanks for willing to do a PR.
This feature seems to be coming from the node debug adapter extension. Thus forwarding to @weinand and @roblourens as they would be pest to provide code pointers as to where to start a potential PR

The "legacy" debugger places "VMnnn" scripts under the "<node_internals>" node (for which we already have skipFiles support). My suggestion: use the same approach for "inspector" debugger and problem is solved (and both debuggers become consistent).

see https://github.com/Microsoft/vscode/issues/33018

@roblourens as part of our November issue grooming could you please consolidate the three items into one?

Will track this with https://github.com/Microsoft/vscode/issues/31537


ThermoRawFileParser does not work WIN10

Basic information

My operating system and version: WIN10 22H2
My MZmine version: 3.9.5

What happened
Cannot import Thermo .raw files
Windows error message "ThermoRawFileParser does not work anymore", followed by Java error "java.lang.Exception: no scans found"

Thänks for this beautiful software, please help me :)

Please describe what happened and how it differs from what you expected to happen.
Please include all parameter values for the MZmine modules you used.
Please upload screenshots of any errors and your log/mzmine.log file.
Please upload a standalone MZmine project file (or a batch + raw files) that demonstrates the problem you are reporting. You can use Google Drive, Dropbox, or a similar repository to upload the project.
Issues opened without an example project are unlikely to be processed

search for the "mzmine_thermo_raw_parser" folder in the mzmine temp folder and the system temp folder and delete it.


Fix custom Dockerfile description on Docker Hub

The code before the change causes the following error.

failed to solve: valkey: failed to resolve source metadata for docker.io/library/valkey:latest: pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed

I have confirmed the fix on Docker hub. Thank you.

https://hub.docker.com/r/valkey/valkey


GH-439: Add 'transacted' to Rabbit Producer Props

Fixes #439
Resolves #401
I suggest reviewing on GitHub with ?w=1 in the URL to ignore whitespace changes - lots of them a big indented try/finally is removed.

Everything else LGTM. Will merge.

Merged w/https://github.com/spring-cloud/spring-cloud-stream/commit/fa035296f2338d024fcf5f1178d26e69d3a4c360


Fix styling problems in eclipse integration

Only depend on glsp 2.1.1: Add a resolution, because eclipse-glsp/ide is only available as 2.1.0 :(

Was like this before with glsp prococol and client in versions 2.1.0 and 2.1.1:

@martin-fleck-at eclipse integration does not work nicely with this multiple versions. So would be very nice to always also release the eclipse integration or relax the dependency onto glsp client.

@martin-fleck-at eclipse integration does not work nicely with this multiple versions. So would be very nice to always also release the eclipse integration or relax the dependency onto glsp client.

That is definitely a good point and I forwarded it to the rest of the GLSP team. I agree that having all versions on the same level is definitely the best way forward, even if there was no change in one particular package.


Setting a prefix manually in a nested embeddable overrides the parent one

Describe the bug
When the prefix is set manually in an embeddable (of an embeddable), it does not concatenate with the prefix of the parent.
It can lead to duplicate fieldNames, especially when the embeddable is re-used.
This looks similar to #5642, but with prefix set manually.
Do I intent to submit a PR?
I've already forked the repo, so I'll give it a try.

Note:
If this is fixed, it will change the generated schema of entities with manually prefixed nested embeddables.

Reproduction
The full test can be found here.
Here's a short version:
@Embeddable()
class Address {
  @Property()
  city!: string;
}

@Embeddable()
class Company {
  @Property()
  name!: string;

  @Embedded(() => Address, { prefix: 'addr_' })
  address!: Address;
}

@Entity()
class Person extends BaseEntity {
  @PrimaryKey()
  id!: number;

  @Embedded(() => Address)
  addr!: Address;

  @Embedded(() => Company)
  company!: Company;
}

it('should create the metadata without conflict', async () => {
  let orm: MikroORM | undefined;
  const loadORM = async () => orm = await MikroORM.init({
    entities: [Person],
    dbName: ':memory:',
    strict: true,
    validate: true,
    validateRequired: true,
  });

  // MetadataError: Duplicate fieldNames are not allowed: Person.company_address.city (fieldName: 'addr_city'), Person.addr.city (fieldName: 'addr_city')
  await expect(loadORM()).resolves.toBeDefined();

  await orm?.close();
});

What driver are you using?
None
MikroORM version
6.3.12
Node.js version
20.17.0
Operating system
Ubuntu
Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord.
[X] The provided reproduction is a minimal reproducible example of the bug.

If this is fixed, it will change the generated schema of entities with manually prefixed nested embeddables.

Hmm, so it will be a bit breaking, but only for people who depend on this misbehavior. I guess it should be fine to fix that outside of a major bump, worst case we can hide the new behavior behind a flag and do it in v7 if anybody complaints.

Hmm, so it will be a bit breaking, but only for people who depend on this misbehavior.

Indeed.
The changes will probably be detected with a command such as mikro-orm migration:check, but:

It is far too optimistic to assume that everyone has this sort of check on a CI or similar.
Even with an auto-generated migration, it will drop the existing columns and create the correct ones (instead of renaming).
As you said, there may be people who need/want this absolute-prefix behavior.

One way of correcting this without any breaking (for now) would be to add a "prefix-mode":

absolute: (current behavior) whatever the nesting level of the embeddable, the prefix value is used.
relative: (the "correct" way) behaves like prefix: false but uses the provided prefix value instead of the property name for the concatenation.

It could be set both on the global configuration and through the Embedded decorator:
@Embeddable()
class EmbeddableLevel0 {
  @Embedded(() => AnotherEmbeddable, { prefix: "root_", prefixMode: "absolute" })
  nested!: AnotherEmbeddable;
}

MikroORM.init({ embeddables: { prefixMode: "relative" }});

And, for the moment, this value defaults to absolute and could be replaced by relative in a future version.
(Although I think it could be relative from the start and mentioned in the documentation?)
What do you think ?

Yeah, that sounds good. If you would go that path, I would keep the default on the current behavior to be safe.


Typo on link

Link is: for 'Improving Sass code quality on theguardian.com'
Missing an m at the end :)

Woops, thanks!


frontend/backend: pass final tx. note to sendtx and remove propose-tx-note handler

Noticed this when planning the refactor of (frontend) send.tsx, this PR does not change anything and should be a pure refactor.

the propose-tx-note handler did nothing but setting a field on BaseAccount it did not validate anything, thus removing it and just using the final tx note reduces the code size but changes nothing.

We initially separated the note from the txProposal because we did not want to perform any actions when (e.g calculate fee) when user types a note:
https://github.com/BitBoxSwiss/bitbox-wallet-app/commit/4eb692c84351dbd23ae391e99ffd5d8452db08f7
It would be good to validate the note though to match the constrains here, but that would not be a refactor so maybe in another PR:
https://github.com/BitBoxSwiss/bitbox-wallet-app/blob/87d6219ddb566a52aa410c54cd75d63669e5cec6/backend/accounts/notes/notes.go#L92

(has a one line conflict with #2860)

Also it should be one commit, it's one logical change.

(rebased)

@benma thanks :) I rebased, squashed, and added a comment explaining why we don't return an error when unmarshaling the tx. note fails, PTAL.


Implement nested comments on backend

Create a comment entity with the following properties

authorUsername
title
content
timestamp
blogId
replyTo
replyTo will be null, incase the comment is not a reply

We also need need endpoints for adding comments, getting comments etc
Lemme know if need more details

Sir pls assign this issue to me

ok sir


replace all .unwrap() and .expect() with ?

Okay, this is mine. I want to claim it. :D

@jeremyscatigna have you looked into it yet?


Compatibility php > 7.0

check requirement to match 7.0.*

Already supported

zendframework/zend-json 2.6.1 requires php ^5.5 || ^7.0 -> your PHP version (7.0.3) in composer.json does not satisfy that requirement.

Can you paste your composer output please :)

Actually it's working when direct require! (so sorry for the issue)
But this project https://github.com/marcaube/ObHighchartsBundle/blob/master/composer.json
require "zendframework/zend-json": "~2.3" ==> so inclunding 2.6.1 (with php ^5.5 || ^7.0)
but then if fail :/
==> http://pastebin.com/ZavRKk9F
don't think its an error from your side but if you have any idea (not blocking at all)
Thanks :)


feat: add disposable tokens apis to golang sdk

It looks like we're missing test coverage for all permissions scopes except TopicPublishOnly, tests for custom token scopes manually composed of permissions, and a test for `AllDataReadWrite. Not necessarily a blocker for this PR though if you could add a ticket for additional testing.

It looks like we're missing test coverage for all permissions scopes except TopicPublishOnly

I think the rest of these are at the end of the test file https://github.com/momentohq/client-sdk-go/pull/368/files#diff-a51994a283c26d43a0949bfa49bcf706a7b5741d973ec01926eadca7bc89b977R1208, there are lots of permissions tests 😅

It looks like we're missing test coverage for all permissions scopes except TopicPublishOnly

I think the rest of these are at the end of the test file https://github.com/momentohq/client-sdk-go/pull/368/files#diff-a51994a283c26d43a0949bfa49bcf706a7b5741d973ec01926eadca7bc89b977R1208, there are lots of permissions tests 😅

Ah, geez, yeah 🤦 I needed to pull.


The error result of the delayed replacement rule displayed on debug console.

The testing code:
i = 0;
{a, b, c, d, c, a, c, b} /. c :> (i++; Echo[i, "replacement "]; f)

vscode:

MMA:

This works fine for me. Did you ever assign your a with {1,2,3,4,5,6,7,8} in a previous evaluation?

You're right. See below:


Performance issues when including Autolinker

Evaluation of Prism.js is super slow when Autolinker is included. The following two images are showing the difference in evaluation time when Autolinker respectively is included and not included.
Both images are of a page that only includes Prism and but aren't using it.

This is the evaluation time is on a very fast desktop CPU. My Nexus 4 smartphone takes about 25 sec. for the same task.
This means that a page load takes 25 sec longer on my smartphone when Prism is included on the page, even though it isn't used.

Thanks for reporting. Can you tell me which components (i.e. languages) are loaded?

Prism download page

Thanks! It should be much better now. Please redownload with the link you provided and give it a try. If the problem persists, feel free to reopen!

Thanks. The problem is fixed.


Use themed component

closes #33

[x] Button

[x] ButtonGroup
[x] FloatingButton
[x] SupportButton
[x] ToggleButton

[x] Card

[x] Card
[x] CardGrid
[x] DashboardCard

[x] Dashboard
[x] Dropdown

[x] Dropdown
[x] DropdownItem
[x] DropdownMenu
[x] DropdownSelector
[x] DropdownToggle

[x] Modal

[x] Modal
[x] ModalDialog

[x] Pagination
[x] Split Button

IMO we could do much further with adding a base theme attribute to each component, but we can tackle that on a separate PR.
Looks good for now, well done. Let's ship it!


SLF4J

What are your thought about using SLF4J at the project?
This way the responsibility of which logging solution relies on the main application avoiding the usage of slf4j bridges or any other special configuration.

PR Closed: https://github.com/esanchezros/quickfixj-spring-boot-starter/pull/8


Improve documentation on Segment Behaviour

(Quoted @jwintz #7)

package icons shows up just fine after M-x package-refresh-contents, which makes sense, otherwise it would slow down the startup process
...
text-scale works fine whenever you increase or decrease the text scale. By default the modeline does not render anything

I have made a lot of design decisions around behaviour of segments, for example

File path is relative to project root iff projectile is set
Text scale only shows when scale is increased or decreased
Package icon requires you to have added the advice and run package-refresh-contents once

As you've picked up on in your comment.
I'd really like to set document these behaviours and nuances a bit better (maybe in a Wiki?) including pictures of the different icon sets as well, but it's a big task I just haven't picked up yet 🙂

Totally agree with most of these choices

makes sense for text-scale to be displayed only when it has been changed
with no explicit advice in user init, package icon shows just fine once package-refresh-contents finishes.

As for the file path, it might lead to a very large segments when project hierarchy has a huge subfolder depth. I would go for the file name only.

The file path is a separate segment so you can turn it off entirely if you just want the file name 🙂  Ultimate flexibility!

Awesome :-)

(spaceline-toggle-all-the-icons-buffer-path-off) for information.


Implement: apps pems show

Add a "apps pems show" command to tapis-cli

Specifically, implement apps pems show <app_id> <username> to display permissions for a specific user.


Feature: Add Event Parsing

Summary of changes

BREAKING: Event Parsing in TxLog and BlockBroadcastResult
Update TxInfo and TxLog interfaces to Columbus-4
Add TxAPI.search

--
Event Parsing
The main breaking change is modifying TxInfo.events type signature from Event[] to Events. Events holds a parsed version of the blockchain events in a nested object instead of an inconvenient array.
To illustrate:
Before:
...
const storeCodeTxResult = await terra.tx.broadcast(tx);
const codeId = +storeCodeTxResult.logs[0].events[1].attributes[1].value;

After:
const storeCodeTxResult = await terra.tx.broadcast(tx);
const {
  store_code: { code_id }
} = storeCodeTxResult.logs[0].events;
const codeId = +code_id[0];

You are no longer burdened with having to know which order the event comes in, and you can specify the event type and attribute to make your query. TxInfo / Broadcast will automatically parse the response for you.
Update TxInfo and TxLog interfaces
As of Columbus-4, the following interfaces have changes.
TxInfo

events: Event[] is no longer available at the top level, and is now only available inside TxInfo.logs

export namespace TxInfo {
  export interface Data {
    height: string;
    txhash: string;
    raw_log: string;
    logs?: TxLog.Data[];
    gas_wanted: string;
    gas_used: string;
    tx: StdTx.Data;
    timestamp: string;
    code?: number;
  }
}

TxLog

success: boolean is no longer a reported field

export namespace TxLog {
  export interface Data {
    msg_index: number;
    log: string;
    events: Event[];
  }
}

TX Search
You can now search for transactions. The below shows an example:
const searchResults = await terra.tx.search({
  limit: 20,
  page: 2,
  "message.action": "send"
});

console.log(searchResults.txs);

Please fix test


add disconnect

Codecov Report

Merging #65 (db10ba5) into main (cfa6a7a) will increase coverage by 0.71%.
The diff coverage is 93.93%.

@@            Coverage Diff             @@
##             main      #65      +/-   ##
==========================================
+ Coverage   60.05%   60.76%   +0.71%
==========================================
  Files          12       12
  Lines        1149     1175      +26
==========================================
+ Hits          690      714      +24
- Misses        370      371       +1
- Partials       89       90       +1

Impacted Files
Coverage Δ

pkg/kafsar/kafka_impl.go
49.16% <93.93%> (+2.83%)
:arrow_up:

Continue to review full report at Codecov.

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


KAFKA-18015: Add support for duration based offset reset strategy to Kafka Streams

Initial PR for implementation, looking for feedback. Implemented AutoOffsetReset class with option to adjust consumer offset by_duration, as well as unit tests and updates to the Topology sources.
Committer Checklist (excluded from commit message)

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

@KApolinario1120 -- we only have one more week left for feature freeze deadline, and we want to get this into AK 4.0.0 release.
I was wondering if you will be able to complete this work on time? There was not update yet, after my review, and the PR is still very incomplete.
Would you mind if we take over the work to ensure we can get it into AK 4.0.0 release?

@KApolinario1120 -- we only have one more week left for feature freeze deadline, and we want to get this into AK 4.0.0 release.
I was wondering if you will be able to complete this work on time? There was not update yet, after my review, and the PR is still very incomplete.
Would you mind if we take over the work to ensure we can get it into AK 4.0.0 release?

I apologize, I have been very busy outside of work/open source lately and have not made the time to check in on this. I appreciate the thorough review, I am currently working through the comments and will push changes this evening. Please feel free to take over after I have a chance to improve upon the comments made this evening.

Thanks! -- I am very happy to work with you on this, and review changes to your PR asap, to iterate fast on this one, so we can make the deadline next week.

Thanks for the PR. Made a pass.

@mjsax I have pushed more changes based on the comments you made. I want to continue to work on this, however I do not work with Java in my day-to-day and debugging my compilation errors is proving difficult. I am working through fixing the issues I am getting.
Would you be open to pairing on my current bugs, so that I can learn for next time?

Made another pass.

I did a bit of work this morning on some of these comments. I am planning on running through all of your comments by EOD, and I appreciate the help in getting this to where it needs to be.

Thanks @KApolinario1120. Great to hear. I will take another look tomorrow, after you pushed more updates.
As we are very short in time, I did start to work on a second PR for the internal KS changes (https://github.com/apache/kafka/pull/18115) -- this PR depends on your PR, and we might need to align both at some point.
To speed things up, and if ok with you, I might also start to push changes into your PR directly, so we can merge it asap, to unblock the second PR.
Sorry for the rush, but you just picked this ticket with a little bit of "bad timing" given the release deadline... After this one is done, and you contribute more, I promise I won't chime in into your work, but just review and help you to get it done yourself.

Thank you so much! ❤ Sorry for the rush, but you just picked this ticket with a little bit of "bad timing" given the release deadline... After this one is done, and you contribute more, I promise I won't chime in into your work, but just review and help you to get it done yourself, w/o any time pressure.
No need to apologize, I consider it a good thing that this is a bit urgent. This is my first contribution to the project, and the added pressure has helped me overcome the nerves and uncertainty of making mistakes/not having a great understanding of what's going on yet. This has given me just the boost I needed to see that I can contribute meaningfully to the project, and has made me want to continue after this feature is done.

You have been immensely helpful and have taken extra time to explain why things are done a certain way, rather than simply 'this is how it is' or making me feel like a toad. That has further inspired me to push myself to do better work than I might have otherwise been able to produce. I hope to one day have a tech lead like you to work with in my 9-5.

As we are very short in time, I did start to work on a second PR for the internal KS changes (#18115) -- this PR depends on your PR, and we might need to align both at some point.

Need to update AddSource methods in Topology.

My PR does cover this already, so don't worry about it. Let's focus only on the user facing changes we need in the PR.
To speed things up, and if ok with you, I might also start to push changes into your PR directly, so we can merge it asap, to unblock the second PR.

That is ok @mjsax, I have an hour and some change to push updates this morning. I will check on what you have pushed so far, planning on finishing the user-facing javadocs before I begin my day job. Whatever still needs work this evening, I will check in and continue on.

build failure is related looks a spotless error

@bbejeck -- needed to rebase this one, to remove OffsetResetStrategy enum in favor of AutoOffsetResetStrategy.StategyType as discussed on the other PR. (No rebasing conflict luckily).
There was also a failing test ConsumedTest.scala which require a few more fixes, and updates to Consumed.scala -- we need to update the KIP accordingly, too. \cc @omkreddy
Hope it will not all pass and we can merge. Call for another sign-off.

@KApolinario1120 -- I believe I did push all changes we need. No need to update this PR from your side.
Please take a look. Happy to answer any questions you might have.
A second PR will implement the internal changes for KS It's still WIP, and I have a few more local changes that I did not push yet -- think it's best to merge this PR first, so I can rebase the second one and clean it up. https://github.com/apache/kafka/pull/18115

Merged to trunk.
Thanks @KApolinario1120 for all your hard work! Thanks for helping with reviews @bbejeck and @omkreddy


Unicode Warning: Unicode equal comparison

Seems when url is unicode encoded. VCR throws a warning about it and fails the test with -rw flag. Also seems that cassettes can't be used more than once.
System: Ubuntu 15.10 64bit
python version 2.7.10
py.test --version
This is pytest version 2.9.1, imported from /home/crawln/git/Flexget/lib/python2.7/site-packages/pytest.pyc
setuptools registered plugins:
  pytest-capturelog-0.7 at /home/crawln/git/Flexget/lib/python2.7/site-packages/pytest_capturelog.pyc
  pytest-xdist-1.14 at /home/crawln/git/Flexget/lib/python2.7/site-packages/xdist/boxed.pyc
  pytest-xdist-1.14 at /home/crawln/git/Flexget/lib/python2.7/site-packages/xdist/looponfail.pyc
  pytest-xdist-1.14 at /home/crawln/git/Flexget/lib/python2.7/site-packages/xdist/plugin.pyc
  pytest-cov-2.2.1 at /home/crawln/git/Flexget/lib/python2.7/site-packages/pytest_cov/plugin.pyc

CannotOverwriteExistingCassetteException: No match for the request (<Request (GET) https://api-v2launch.trakt.tv/search?query=%D0%98%D0%B3%D1%80%D0%B0+%D0%BF%D1%80%D0%B5%D1%81%D1%82%D0%BE%D0%BB%D0%BE%D0%B2&type=show>) was found. Can't overwrite existing cassette (u'/home/crawln/git/Flexget/tests/cassettes/test_trakt.TestTraktShowLookup.test_alternate_language') in your current record mode (u'once').
--------------------------------------------------------------------------------------------- Captured stderr call ---------------------------------------------------------------------------------------------
/home/crawln/git/Flexget/lib/python2.7/site-packages/vcr/matchers.py:35: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
  return r1.query == r2.query

Check out the docs on record modes.   By default the cassette can only be used once, but if you would like it to be more than once there's a mode for that :)

did you even look at the error that was pasted? this is still very relevant

Just to add some context to @liiight's comment:
The request recorded in the cassette is the same as the one in our test, but it fails to match the cassette on Python 2, because of a type error. The mismatch is caused by a comparison between a unicode string and a str object ie. u'sóme unicøde string' == 'sóme unicøde string'.
It's been a long time since I examined the problem, but from what I recall, the problem is that you're not saving unicode objects properly in the cassette.


... has invalid version ~> Version_1 or ~> Version_2

Originally reported by ulfa in https://github.com/Supersonido/rebar_mix/issues/6
Hi,
I am trying to use rebar3_mix, but when ich declare a dependency like
{timex, "~> 3.5"} rebar3 tries to download the dependencies from timex.
But the dependency of the timex package tzdata is declared in the mix.exs as {:tzdata, "~> 0.1.8 or ~> 0.5"} and I think rebar3 can't manage this.

Confirmed. This, is due to rebar not supporting these type of constraints. This PR (draft) attempts to resolve this by migrating to verl in rebar3 : https://github.com/erlang/rebar3/pull/2785


[BUG] fail to build yt with Cython 3.0.0a10 (AttributeError: cython_sources)

Describe the bug
I tried building yt using the latest Cython alpha (3.0.0a10), which failed with
AttributeError: cython_sources

See an example failed job here for full traceback
https://github.com/yt-project/yt/runs/7598205895?check_suite_focus=true
To Reproduce
here's the exact workflow file used https://github.com/neutrinoceros/yt/blob/test_cython_3/.github/workflows/bleeding-edge.yaml
These are the command invoked to build yt in this test env
python setup.py build_ext -q -j2                                 # runs fine
python -m pip install -e .[test] --no-build-isolation            # crashes

Expected behavior
A clear and concise description of what you expected to happen.
Environment (please complete the following information):

OS: Ubuntu 20.04.4
Python version: 3.11.0b5
Cython version: 3.0.0a10

Additional context
Most recent releases for pip and setuptools are used

pip 22.2.1
setuptools 63.2.0

I have very little understanding of the traceback. I think the problem comes from Cython because I'm just getting started testing 3.0, and the error also seems to hint that way. I'll happily provide any further details upon request.

The test failed on Collecting PyYAML, so it's not about the code in the yt, tho the error suggests that it does have something to do with the cython:
Collecting PyYAML
  Downloading PyYAML-6.0.tar.gz (124 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 125.0/125.0 kB 34.3 MB/s eta 0:00:00
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'error'
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [53 lines of output]
      running dist_info
      creating /tmp/pip-modern-metadata-30a1v8vn/PyYAML.egg-info
      writing /tmp/pip-modern-metadata-30a1v8vn/PyYAML.egg-info/PKG-INFO
      writing dependency_links to /tmp/pip-modern-metadata-30a1v8vn/PyYAML.egg-info/dependency_links.txt
      writing top-level names to /tmp/pip-modern-metadata-30a1v8vn/PyYAML.egg-info/top_level.txt
      writing manifest file '/tmp/pip-modern-metadata-30a1v8vn/PyYAML.egg-info/SOURCES.txt'
      Traceback (most recent call last):
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>
          main()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 164, in prepare_metadata_for_build_wheel
          return hook(metadata_directory, config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/build_meta.py", line 188, in prepare_metadata_for_build_wheel
          self.run_setup()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/build_meta.py", line 174, in run_setup
          exec(code, locals())
        File "<string>", line 288, in <module>
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/__init__.py", line 87, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 177, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 193, in run_commands
          dist.run_commands()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 968, in run_commands
          self.run_command(cmd)
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
          super().run_command(command)
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
          cmd_obj.run()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/command/dist_info.py", line 35, in run
          egg_info.run()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 307, in run
          self.find_sources()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 314, in find_sources
          mm.run()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 549, in run
          self.add_defaults()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 586, in add_defaults
          sdist.add_defaults(self)
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 252, in add_defaults
          self._add_defaults_ext()
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 337, in _add_defaults_ext
          self.filelist.extend(build_ext.get_source_files())
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "<string>", line 204, in get_source_files
        File "/opt/hostedtoolcache/Python/3.11.0-beta.5/x64/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 103, in __getattr__
          raise AttributeError(attr)
      AttributeError: cython_sources
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

PyYAML was hooking into old_build_ext here, which was replaced by new_build_ext in 3.0a10 (https://github.com/cython/cython/pull/4498). The old version had a method called cython_sources().

Duplicate of #4568.

Thanks for the clarification. Sorry I wasn't able to connect the dots myself.

Just to further confirm there wasn't any other incompatibilities for building yt, thanks again !


Add revision and projectRoot options

We need the ability to configure these two options to enable additional features for source maps:

notice.server.revision
notice.server.project_root

The configuration options should be named revision and projectRoot, and should be configured like this:
Honeybadger.configure({
  apiKey: "Your Honeybadger API key",
  revision: "Current GIT SHA",
  projectRoot: "/private/var/containers/Bundle/Application"
});

Resources

Client Library Spec - Configuration Options
honeybadger.js Configuration Options
Notice Payload Schema

This is done in 9b88b12

Thanks! I updated the changelog: https://github.com/honeybadger-io/honeybadger-react-native/commit/274ae8d2b028db49a5296024fffd1cc05ba84657


⚠ Bofrost.fr has degraded performance

In dc9d5ef, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1007 ms

Resolved: Bofrost.fr performance has improved in b0f6f06.


⚠ GazelleGames has degraded performance

In 814bf79, GazelleGames ($GGN) experienced degraded performance:

HTTP code: 200
Response time: 1422 ms

Resolved: GazelleGames performance has improved in 4a5a62f.


build fails on memory

🐞 Bug report
ng build

fails with the following stack:
Generating browser application bundles (phase: building)...node:internal/buffer:959
super(bufferOrLength, byteOffset, length);
^

RangeError: Array buffer allocation failed
    at new ArrayBuffer ()
    at new Uint8Array ()
    at new FastBuffer (node:internal/buffer:959:5)
    at createUnsafeBuffer (node:internal/buffer:1062:12)
    at Function.allocUnsafeSlow (node:buffer:388:10)
    at read (\node_modules\@angular-devkit\build-angular\node_modules\webpack\lib\serialization\FileMiddleware.js:597:32)
    at \node_modules\@angular-devkit\build-angular\node_modules\webpack\lib\serialization\FileMiddleware.js:657:7
    at \node_modules\graceful-fs\graceful-fs.js:362:16
    at FSReqCallback.oncomplete (node:fs:201:23)

Environment

Angular CLI: 14.0.3
Node: 18.5.0 (Unsupported)
Package Manager: npm 8.14.0
OS: win32 ia32

Angular: 14.0.3
Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1400.3
@angular-devkit/build-angular   14.0.3
@angular-devkit/core            14.0.3
@angular-devkit/schematics      14.0.3
@angular/flex-layout            13.0.0-beta.38
@nguniversal/express-engine     14.0.2
@schematics/angular             14.0.3
ng-packagr                      14.0.2
rxjs                            7.5.5
typescript                      4.7.4
webpack                         5.73.0

More Info
Large project, 35Mb in previous development build.
Node environment variable set to --max-old-space-size=16384.

apparently, ng writes to  .angular folder, which grow to > 350GB!!

That is strange since we do purge old data from the .angular.
Can you try to use a supported version of Node.JS version 14 or 16 and see if the problem persists?

It does + removing it didn't solve the issue.

any idea what would cause
 c:\ws\src\util-inl.h:378: Assertion `!(n > 0) || (ret != nullptr)' failed.
 1: 0137E318 v8::sampler::Sampler::Start+17832

?

That typically indicates that you have the wrong architecture version of Node JS installed.
I checked again the above ng version and it does appear that you have the 32bit version of Node.js installed which is obviously wrong.
It appears that installing the wrong version is a recurrent issue for you https://github.com/angular/angular-cli/issues/23280#issuecomment-1145979714, thus to mitigate this I highly suggest that you use NVM to manage your Node versions, also please use only LTS versions of Node.JS as non LTS versions are not supported by the Angular CLI.

holy shit! thanks


Remove API-gateway topic env variable geographical area updated

Remove API-gateway topic env variable geographical area updated since it is no longer needed.

removed


###Bug in mat-select dropdown

Bug : Mat-select options are hiding the mat-select title. For Example "Select your gender"
What is the expected behavior?

At least we should display that information what user is going to select in drop down
What is the current behavior?

After clicking on "Select your Gender"

What is the use-case or motivation for changing an existing behavior?
At least we should display that information what user is going to select in drop down. Might be it will not be bug but till now i am not able to fix this
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular 4, Material 2 , Windows, 2.7.2 Chrome**/All**

This is the intended behavior based on the Material design spec.

Didn't you think select option should come little below so that user can see what he is going to select.


How to export data to support ellipsoid segmentation workflow?

To support #59, after running an optimization how do we export from shapeworks:

groomed shapes, with surface reconstructions via mesh warping?
particles
mean shape surface reconstruction and particles?

Source: http://sciinstitute.github.io/ShapeWorks/studio/getting-started-with-studio.html
The File -> Export menu is
Export Current Mesh - Export the current mesh as a VTK mesh file
Export Mesh Scalars - Export the mesh scalars as a CSV file
Export Eigenvectors - Export the PCA eigenvectors
Export Eigenvalues - Export the PCA eigenvalues
Export Variance Graph - Export the variance graph as a PNG file
Export PCA Component Scores - Export the raw PCA component scores for each subject as a CSV file
Export PCA Mode Points - Export the PCA mode points at each step of the PCA slider
The groomed distance transform files are saved in the data folder from where the input files were read.
When the project is saved, the particle files are also saved in the input folder, and an xlsx file with the path to the following files is created:
segmentation_file	groomed_file	transform_file	local_particles	world_particles	group_
@akenmorris, please correct me if here.

Thanks @iyerkrithika21 . I should have specified, how do you do this export from either the command line or Python?

https://github.com/SCIInstitute/ShapeWorks/blob/8c7314cf2ec1a94d26d0b9003b67f0837a040545/Examples/Python/GroomUtils.py#L50
All shapeworks image object can be saved using img.write(filename) using Python API
You can also refer to this python notebook: http://sciinstitute.github.io/ShapeWorks/notebooks/getting-started-with-segmentations.html


Make install support for qlf_k6n10

make install is failing for k6n10.
Also tool chain wrapper support is required for k6n10 till router.

Toolchain wrappers i have upadated https://github.com/QuickLogic-Corp/symbiflow-arch-defs/pull/324 please review.
For k6n10 make install, does not install scripts and techmaps folders.
fasm is still not supported for k6n10.

@mkurc-ant : few more things to be added will be the package uploaded to have both k4n8 and k6n10 files.
We need to provide build to customer today, so please consider this as priority.

@kkumar23 Ok, you can merge #324. I'll check and fix CI so that data files for k6n10 are included in the package


FATAL ERROR: JavaScript heap out of memory BUT only with big PDFs

Hi, I would like to know if there are some actually existing limitations for PDFs to process? As it doesn't function if PDF has around 400 pages.
Also increasing the heap parameter produces no results.
Thanks!

I have the same problem


filterHiddenInAppMessages doesn't work with a JSON only message

It's not possible to use the built in filterHiddenInAppMessages method when using  JSON only in-app message. This is because there is a check to make sure the html exists for every message, which it won't if it's a JSON only message (!!eachMessage.content?.html). Is this supposed to work like this? If so would it be possible to add a method that works with JSON only messages?
https://github.com/Iterable/iterable-web-sdk/blob/6e4f8eb7d6264e7dc835e1137ffd269beadef6d0/src/inapp/utils.ts#L111-L121

Hey @finnhom, thanks for bringing this up. I'll bring this question up to our product teams and see how we should approach addressing it!

After thinking on this some, we can just create a separate method. Considered changing the filter logic there but some users may be dependent on that logic remaining consistent so makes more sense to build a separate method entirely.

Thanks for the swift response and work on this @mprew97!

Hey @finnhom just merged this! Will cut a release here in a bit. You will need to install that updated package in order to use the new method :)

Amazing, thank you

@finnhom apologies on the delay of the release. Install the most recent npm package to access that method.


Tweak README.md and add instructions to setup the EO client

[x] Clean up instructions in README.md
[x] Replace compose.yml setup with a docker command in README.md to spin up MySQL when developing locally
[x] Add instructions to setup EO client

@sorokya We can also consider moving eo-client to its own repository, and link to that in the docs (or in CONTRIBUTING.md)


Error on composer install: Please provide a valid cache path.

On a fresh new clone into a custom directory, I'm getting the following error at the end of composer install:
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

   InvalidArgumentException

  Please provide a valid cache path.

  at vendor/laravel/framework/src/Illuminate/View/Compilers/Compiler.php:66
     62▕         $shouldCache = true,
     63▕         $compiledExtension = 'php')
     64▕     {
     65▕         if (! $cachePath) {
  ➜  66▕             throw new InvalidArgumentException('Please provide a valid cache path.');
     67▕         }
     68▕
     69▕         $this->files = $files;
     70▕         $this->cachePath = $cachePath;

      +16 vendor frames

  17  [internal]:0
      Illuminate\Foundation\Application::Illuminate\Foundation\{closure}(Object(Livewire\LivewireServiceProvider))
      +5 vendor frames

  23  artisan:37
      Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))

Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1

I only ran three commands:
git clone https://github.com/miten5/larawind.git foobar
cd foobar
composer install

i resolve my issue by adding these folders in storage/framework:

cache
views

In order to avoid any confusion, I suggest including these empty directories (perhaps with a readme or something in the folders so that they're included in the repo) or post composer install script.


Add '-Import` param to Install-PSResource

Summary of the new feature / enhancement
As a tester, I want to Install & Import a module ideally in a single call, without the need to run -PassThru | Import-Module that I could then add as a session level entry $PSDefaultParameterValues
This is super low priority & could be achieved externally to PSResourceGet via an extension module, especially with all the potential issues this could bring & is more well it'd be nice ask than it really must have this kinda ask
Proposed technical implementation details (optional)
No response

Thanks I wonder if this breaks the PowerShell, the philosophy of "one action per cmdlet"? Can you explain the scenario more? Thanks!

Yeah it sort of does and that's why on thinking more about this I think I'm probably going to build this external to PSResourceGet as the user story for this in my mind was along the lines of
As a lazy user and wanting to reduce my typing, I want to be able from a single commmand download and determine how I am to test out a module's or script's functionality, which may be via importing them either into the current session, or by starting a seperate session, optionally making use of a container as a further isolation boundary


Add custom QuickPick highlighting

It would be nice to have a bit more control over highlighting in QuickPick. I'm using QuickPick as a search field using regex and the existing fuzzy matching doesn't make sense in this context. I'd like to be able to provide my own highlights for the detail field and avoid highlighting elsewhere, although for completion I think it makes sense to allow custom highlighting on all three fields.
The API could be similar to the proposed highlighted TreeItemLabel in #61482 for backward compatibility. A more general HighlightedString could be a good fit across the board. The implementation can then skip the fuzzy matching if the label type is HighlightedString and apply the highlights in there.
I feel that this would complement #77297 nicely and make for a more versatile QuickPick API.

@chrmarti would you consider a PR for this if I implemented it?

I agree, allowing extensions to fully control filtering and sorting will require them to also control the highlighting.
Would you add matchOnLabel to QuickPick to allow for completely disabling the built-in highlighting? How would you add the highlights to QuickPickItem?

Yes I'd definitely expose matchOnLabel publicly (#83425).
I'd define
export interface HighlightedString{
    label: string;
    highlights?: [number, number][];
}

and then in IQuickPickItem just swap label: string; for label: string | HighlightedString; for backward compatibility. Then in QuickInputList.filter skip the default filtering and highlighting if you find a HighlightedString with a highlights defined and instead populate the IMatchs with the highlights provided. You'd probably want to do the same thing for description and detail too.

Agreed, text instead of label might combine better with label, description and detail on QuickPickItem.
/cc @bpasero @jrieken for feedback on allowing extensions to fully control filtering and highlighting on QuickPicks.

I have doubts that different highlights/filter strategies are going to be confusing. Quick pick always  "looks" the same and this changes how it "feels" without me being able to tell.

Yes text makes the most sense. This same pattern is currently the proposed API for TreeItem with TreeItemlabel and I think it would make sense to adopt this HighlightedString or HighlightedText pattern more generally.
@jrieken I'm not sure I follow - in what way does this change how QuickPick feels? The visible result is the same - a list of items with possibly highlighted labels, description & detail depending on whether something matched according to some criteria. Consider a case where you were doing a regex match with the input - the fuzzy matching/filtering isn't going to work, but you the developer know where the match was so you can supply the highlights and disable other highlighting and filtering.

I am just worried that this will encourage competing match-strategies. Regexp matches "more" than fuzzy match which is OK, I am more worried about the "less" case in which extension can force prefix match onto me. Tho, I do understand that this can be done already, just without benefit of highlights...

I think if you give people a little more flexibility to match and highlight their own way they're going to be less likely to abuse the system rather than more. If they can do things in a simple way there's no need to hack around the problem and create a mess.

I'm not sure I understand what you mean about extensions forcing a prefix match onto you - could you expand on that?

could you expand on that?

With QuickPick#onDidChangeValue you can update the list of items after every keystroke and there are only recommendations about how that should work (how fuzzy that should be). Once the results are returned we use "our" fuzzy score (which is very relaxed) to compute highlights and (sometimes) ranking.

I see yes. In all the use cases I'm imagining you'd be providing your own highlighting precisely because you're doing your own matching as the fuzzy matching/highlighting isn't what you want. Indeed my suggestion is that if a HighlightedString with defined highlights is provided then the fuzzy matching is skipped entirely as the user has clearly indicated that they are the ones doing the matching.

This could be the solution to other problems too like #90521. People clearly want more control and this + matchOnLabel gives it to them without having to implement all manor of additional filtering/highlighting callbacks etc.

@jrieken any more thoughts on this? I'd really love to reach a conclusion here.

Setting alwaysShow: true on the items and sortByLabel: false (#73904 proposed API) on the QuickPick allows you to control the filtering and sorting. You could then let the built-in highlighting decorate the entries. This might sometime show unexpected highlights, but I wonder in which cases these are too much off to call it working fine.
I'm not that much worried about consistency when extensions know better how to handle filtering, sorting and highlighting in their particular case, but when we can avoid  complexity in the API (which this change would clearly add), we should certainly do so.

That built in filtering fails as soon as you have anything other than basic text in input box. Regular expressions for example, or a file mask or anything else that would let you build a powerful search tool. I understand the desire for simplicity but this pattern has been implemented before with highlighting in TreeItems.

@rmanthorpe Do you have an example of where you would use this with regular expressions or file masks?

Sure, as an example, something like ReSharper's "Go to Text" which allows a text search + some inline flags to change the scope of the search. So "foo /fm:c" searches for "foo" in *.c files.  Or something which allows you make calls to ripgrep or git grep (optionally with flags), as if you were on the command line but have the results populate a quickpick so you can pick the result from there. For example "-I foo\d" could do a case insensitive git grep for foo + a numeral. Obviously none of those is going to match the filtering properly because they are more than simple search text.

@rmanthorpe Is there an example in your own extension you are going to implement once this feature is in?

Yes this is one I've implemented, but I haven't published it yet as I wanted to sort out the highlighting problems first.

@rmanthorpe That sounds like a good case for adding custom highlights. Do you have a screenshot or example of where the built-in highlighting does not match a user's expectation given the input and the items shown?

Here I'm just doing a plain text search so the usual highlighting is fine

Here I've added an extension filter for declaration files, and now no matching occurs

Here I've done a regex search and again, no matching

The issue is rarely that you get the wrong thing highlighted, more often than not you just get no highlighting at all because nothing the plain text.

@chrmarti any more thoughts on this? I think you can see there are legitimate use cases.

@chrmarti Any update on this?

@kbysiec No. It is in our list of feature requests for the QuickPick API.

Great so back to my original question:

@chrmarti would you consider a PR for this if I implemented it?

@rmanthorpe sorry for the delay but yes I would consider a PR. I would expect that we would align the highlighting type structure to be similar to that of the other places in the API where we talk about highlighting (which I believe is tree views)


How to use DPS-obtained data to connect to IoT hub?

With DPS you use SAS or X.509 certificate + key to authenticate the device. In return you get hostname and device ID. Should I now use just these two values (no password, no certificate) to connect to the IoT hub? Or maybe while connecting to the IoT hub I should reuse the SAS or X.509 certificate + key that I used with DPS?

Yes, you are correct. You get the assigned hub name from DPS.
CERT
The MQTT password is empty for cert auth. The same device cert is presented to both DPS and Hub endpoints. When DPS previsions the device in the hub, it will config it to use the device cert for auth.
SAS
For SAS auth, the password is generated on the device as a azure SAS token (the device key is a HMAC hash of the enrollment group and device id).

Adding some extra docs for SAS just in case you or others would like it as a resource:
https://docs.microsoft.com/en-us/azure/iot-dps/concepts-symmetric-key-attestation#detailed-attestation-process

Thanks!


Java is downloaded to inner folder but expected in the root

Required Information
Type: Bug
Enter Task Name: JavaToolInstallerV0
Environment
Azure Pipelines
Issue Description
I set my Java tool installer like this:
.
Take a look that path inside the container has folders: "JDK/13.0.2/jdk-13.0.2.zip"
When I run the task, it ends up with result

Downloaded 'JDK/13.0.2/jdk-13.0.2.zip' to 'd:\work\2\s\java\JDK\13.0.2\jdk-13.0.2.zip'
Total Files: 5290, Processed: 1, Skipped: 5289, Failed: 0, Download time: 8.03secs
##[error]ENOENT: no such file or directory, stat 'd:\work\2\s\java\jdk-13.0.2.zip'
##[error]ENOENT: no such file or directory, stat 'd:\work\2\s\java\jdk-13.0.2.zip'

Take a look that it downloaded to a sub folder JDK\13.0.2, but then tries to look for the zip file in the root.

Closed as duplicate https://github.com/microsoft/azure-pipelines-tasks/issues/10683


Support to inherit base package

I can use this feature set_base to override the partial configuration of builtin package in xmake-repo.
Override package configuration
for example: override package urls, ...
package("myzlib")
    set_base("zlib")
    set_urls("https://github.com/madler/zlib.git")
package_end()

add_requires("myzlib", {system = false, alias = "zlib"})

target("test")
    set_kind("binary")
    add_files("src/*.c")
    add_packages("zlib")

Define alias package in repositories
like this, an alias package(onetbb -> tbb): https://github.com/xmake-io/xmake-repo/blob/master/packages/o/onetbb/xmake.lua
package("onetbb", {base = "tbb"})

or
package("onetbb")
    set_base("tbb")

xmake.lua
add_requires("onetbb")

Related issues: https://github.com/xmake-io/xmake/pull/2010

Does this mean we can also add versions without making a PR?

Does this mean we can also add versions without making a PR?

You can do it, but I still hope you can open pr to help update the package versions in the repository.


The Huge Crafting Paradox

(warning: there is a lot of toftology and there may be translation errors, I am bad at English)
To get netherack, need to cool magma by airing it on a fan that blows through powder snow. it, in turn, is obtained by adding 4 frosts (sugar + snowball) to a bucket. but it is impossible to get the snow itself. there is only one biome in the whole world, and its temperature does not allow snow to fall in the rain, even at an Y:319. that is, it is possible that the snow will get only from creative.

But there is Frost Walker, you just need to enchant boots and break the ice with a silk touch!

leather cannot be getted. in order for us to have cows, we need a sniffer, and its egg is impossible to get.
This can be solved by adding a recipe with crushing sand in a millstone, from which sandstone is made, and then its smooth version, which needs to be ground and a suspicious sand will turn out, when washed, there will be a chance to get a sniffer egg. this idea is from create live 5, and I think it sounds quite interesting.

diamonds for the enchantment table are also impossible to obtain, in order to crush a block of coal, coal is needed, it in turn is done by compressing its woody variation, attention, under heating. How do we get blaze burner that needs snow, that needs ice, that needs enchantment table, that needs diamonds, that needs coal, that needs heating, that needs a blaze burner?

crushing wheels, brass for crafting which also requires heating, and copper is made of veridium or clay, both materials cannot be getted without the same wheels

rose quartz can be traded with piglins. that's just where the need to farm gold from zombie piglins comes into force until there is an ocrum. which is also impossible to get, because it is impossible to get lava, because the flare burner.. I've already discussed it.

Fish your boots (junk) and the sniffer egg (treasure). (Btw I also followed Create Live 5)
The Enchanting Table is actually a thing, totally forgot about that! Thank you very much.
Place Mud on Dripstone Blocks with Pointed Dripstones underneath. The Mud will turn into a Clay Block.
Thought about milling Terracotta from Clay?

Conclusion: Some essential parts of the modpack require really deep knowledge of vanilla minecraft to get them. I'm going to start a trailer for this pack, I think many things will be much clearer afterwards.
The fact that Enchantment Tables are unobtainable yet, is a huge problem. I try to find a solution for this as soon as possible.
PS: Did you have any problems with Phantoms or an extremely slow filling Cauldron?

Everything is okay except clay. Do you seriously propose to wait for a merchant (whom I have never seen in 150 hours in the game, even if 130 of them are waiting for water) with the necessary bidding for several hundred or even thousands of hours? And then spend several tens of hours on clay? even more so, not so much clay will give us, because for brass, without which it is impossible to get zinc along the chain of dependencies, and therefore brass, and (another huge chain of dependencies)
about P.S.: yep. It is not so difficult to get flax, but in order for this to happen before the phantoms appear, you need to set this goal for yourself from the first seconds, and continuously go towards it. Which will not help anyway, because the boiler in those 130 hours was not only not filled, not a single water level appeared.  In general, no resource should need the latter one or Wandering Traders. And that you have to wait thousands of hours is more a side effect of the nearly unobtainablility of Powder Snow (Freeze Magma Block -> Netherrack -> Empty Blaze Burner -> Blaze Burner -> ... -> Biofuel -> Lava (+ Honey) -> Limestone -> Dripstone (+ Mud) -> Clay) and NOT A FEATURE. I don't want you to grind for nothing.
By the way, you can fish Enchanted Books and combine them with the respective item using an Anvil.
about PS: Maybe a compacting recipe (eg. Leaves / Bamboo / Mulch) for water would be better? Or just 5 Cauldrons instead of 1. A very effective method against Phantoms is to build a platform above your head. They won't spawn anymore.

OK, I'll just wait for your decision about the snow. if anything, can you get a bucket of honey without a dispenser? otherwise, I never got to honey, I just never found an oak tree with a beehive.
yes, but without sculk sensor or mod for auto fishing(which is obviously cheat) this will make the player spend hours for fishing. and it will not be possible to automate before getting brass. I understand, gameplay is worth dragging out, but not that much. all these micro chances for some necessary event, the chance for some rare item without which you cannot advance, all this is the lot of typical OG modpacks, especially since the chance to get these two enchantments is small, because books are selected from the pool of enchantments of the table from level 30, and priority is given to some kind of efficiency or smite
yes, it definitely makes sense. a kind of tribute to the traditions of modified skyblocks. if I understood correctly, you want to make a recipe using a mechanical press, which, if there are greens in the bowl, will release some water. and you can add probability that 5 mlb of water will be obtained from 5 or 8 block of leaves is 50-25%. it will make you sweat, and there will be less element of randomness in it (I hate randomness, and it's honestly mutual).
I know about the protection from phantoms with a roof. I like it better when it's open, although I used to be a follower of hidden bases in the mountains. what about turn on doinsomnia when player receives water, and hint to the player that it is desirable to start creating a bed? but it's a little casual..

the new version 3.1.0 is out! I've made some changes I didn't tell you:
Water can be easily collected now by placing Rain Gutters in the rain. They fill up with water very quickly (within one rain shower) and can be emptied directly with a bucket. I think it is now definitely possible to get a bed within the first 3 minecraft days. And if not, you can always build a roof until your bed is ready, which shouldn't take that long.
Powder Snow can now be obtained directly by placing cauldrons at altitudes where it can snow (I think y > 215?) You'll need a few of them, but you'll have enough iron by this point. Also, you no longer need to fish MANY enchanted books to get the right enchantment.
As a side note, even Calibrated Sculk Sensors output the same redstone signal strength when the fish bait produces bubbles and when you actually catch a fish. Fish farming is therefor completely based on luck.
I hope you like these changes and would love to hear your (hopefully not too bad) feedback!

Oh, and Bee Nests grow on Cherry Trees with a 20% chance (modified) because they have so many blossoms. This behavior is already explained in the "Buzzy Trees" advancement.

I've tested all the ideas you mentioned, everything works fine! despite the fact that the idea of sewerage is a little unbalanced, but, unlike it, we can say that water is a fundamental part of a skyblock, and the delay in getting it is, to put it mildly, the idea of psychos who like to watch other people suffer, and whose recommendations on YouTube like: "100 DAYS IN THE MOST DIFFICULT MINECRAFT HARDCORE SKYBLOCK", "I SPENT (H) HOURS CREATING (M) IN HARDCORE MINECRAFT SKYBLOCK".
if several similar videos about this modpack are not published, my life will be in vain, lol
I think I'll close this issue, all problems are solved.


Gijgo still active/supported?

Hi,
First of all, thanks for the great product you have made - I have been using gijgo grid now for several projects, and it is working perfectly!
My concern is, is it being supported still? I can see that there is a lot of unsolved issues on Github, but I can also see that the latest version is from february 2019. So it seems that the project is still active?
For example, if there is any issues in future browser versions, can I still expect such issues to be resolved?

Yes. I still support gijgo. I work on a new version that is planned for early 2020.


ListView protection level

If ListView is defined through XAML (like "<ListView x:Name="listView">") it won't be accessible via C# code (like "masterPage.ListView.SelectedItem = null;") unless you set protection level to public (like "<ListView x:Name="listView" x:FieldModifier="public">".

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ec31ee56-e3b9-a70a-a4ef-80fdf58e7249
Version Independent ID: 766b5774-50bf-f43f-800d-48b5c6c66509
Content: Xamarin.Forms Master-Detail Page - Xamarin
Content Source: docs/xamarin-forms/app-fundamentals/navigation/master-detail-page.md
Product: xamarin
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Thanks for the feedback. I've updated the sample and will get the doc updated.

This is not possible to do in XF at the moment

Sorry, my bad - it is possible


Add syncpack check in build step of the CD

We may have cache mismatches due to syncpack
Let's imagine that someone forgets to run syncpack format before pushing to PR. When running the build step, we run yarn install, which may edit the package.json. Then the cache key will be computed with the modified value.
When arriving in the test steps, the package.json will not have been changed and therefore the cache key will not match the one from the build step.
This may cause precious time to be lost.
In order to mitigate, we could add a syncpack (not syncpack format) command to our build step, this will validate that no package.json has been modified

In fact I believe there shouldn't be any mismatch

For yarn, the lockfile is cached and shouldn't change even if syncpack format changes the package.json
For nx the cache is used after the package.json is changed by syncpack

we could also use a step in the CI to run syncpack https://github.com/marketplace/actions/syncpack-synchronise-monorepo-dependency-versions


PLAT-505: Test: Send VStateReport with Missing state if constructor was interrupted before runner call

- What I did
New test for check that message VStateReport will be send with state Missing if constructor was interrupted before runner call
- How I did it
Add test
- How to verify it
Run test
- Description for the changelog

closed by mistake, sorry


Orders trough Orion exchange will always cancel

Sell orders for ORN will always get partially cancelled. A very small amount of the transaction will always be routed trough Orion and then gets cancelled.

Sell orders for ORN will always get partially cancelled. A very small amount of the transaction will always be routed trough Orion and then gets cancelled.

@virus-zip could you please send some examples of orders and information about the chain used.

This seems like it is connected to the issue of how the sdk takes USDC amounts. The amount that is not part of the integer will get cancelled. Could that be the case?
Example: Order for 10.50USDC will succeed with 10USDC traded and 0.50USDC cancelled.

Also all other orders that are marked as being routed trough Orion will be marked as cancelled. So this is not just an USDC issue.

@virus-zip there are no such problems anymore, since 1.3.5 version.


Error in souffle-converter.py

I was running this small test:
.decl AMethod(?simplename:symbol, ?descriptor:symbol, ?type:symbol, ?method:symbol)
.decl BMethod(?class:symbol, ?superclass:symbol)
.decl CMethod(?ref:symbol, ?interface:symbol)

AMethod(?simplename, ?descriptor, ?type, ?method) :-
  (BMethod(?type, ?supertype) ;
   CMethod(?type, ?supertype)),
  AMethod(?simplename, ?descriptor, ?supertype, ?method).

and I was trying to pass it via the souffle-converter.py
 python souffle-converter.py example.dl example --logic-only
but this error appeared :
Traceback (most recent call last):
  File "souffle-converter.py", line 1032, in <module>
    main()
  File "souffle-converter.py", line 1023, in main
    tree = parser.parse_file(files.inputName)
  File "/home/argc0/.local/lib/python2.7/site-packages/parglare/parser.py", line 133, in parse_file
    return self.parse(content, file_name=file_name, **kwargs)
  File "/home/argc0/.local/lib/python2.7/site-packages/parglare/parser.py", line 204, in parse
    raise error
parglare.exceptions.ParseError: Error at example.dl:6:10:"  (BMethod*(?type, ?s" => Expected: != or % or ) or * or + or , or - or / or : or < or <= or = or > or >= or AS or DOT or OR or ] or ^ or band or bor or bxor or land or lor or } but found <((()> or <NotComment((?type,)>

Currently ddlog has no "or" operator and the translation only accepts dnf rules. The only short term fix is to rewrite such rules by hand.

BTW: this is covered by #174


Added the function get_start_time_for_ema

Its purpose is to get the correct start time in the past so the
ema can unfold before we actually run the test. Thus eliminating
faulty results at the start of our test.
additionaly the fills output is cut again by the original start_time
to prevent trades older then our start date.
Also addes variables to the BacktestSettings class for start and end date.

added some fixes


Raise knife exceptions when verbosity is 3 (-VVV)

Fixes #8433
When we added trace this check wasn't changed, which means you only saw
the stacktrace for 2 (-VV) but not for 3 (-VVV)

Nice catch

@btm can you backport this bit to chef-14 branch please

:+1:


Floem views not properly restricted when using flex-grow.

Floem views will only restrict the viewport of its child if it has an explicit height set. If the height of the view is computed using flex-grow then the view will just grow to the size of the child element and overflow its own parent.
When debugging the scroll view specifically I can see that the proper height is calculated in actual-rect initially but on a following compute_layout it is then changed to the size of the child view. I can't find where this is happening.
child-size: 0.0W×0.0H
new-child-size: 292.5W×217.5H
actual-rect: Rect { x0: 0.0, y0: 0.0, x1: 0.0, y1: 0.0 }

child-size: 292.5W×217.5H
new-child-size: 292.5W×217.5H
actual-rect: Rect { x0: 0.0, y0: 0.0, x1: 390.0, y1:<PHONE_NUMBER>9648438 }        <<-- Should be this size

child-size: 292.5W×217.5H
new-child-size: 292.5W×217.5H
actual-rect: Rect { x0: 0.0, y0: 0.0, x1: 390.0, y1: 217.5 }                     <<-- Is changed here

child-size: 292.5W×217.5H
new-child-size: 292.5W×217.5H
actual-rect: Rect { x0: 0.0, y0: 0.0, x1: 390.0, y1: 217.5 }

The above is produced using this code in scroll.rs
    fn update_size(&mut self, app_state: &mut AppState) {
        let child_size = self.child_size;
        let new_child_size = self.child_size(app_state).unwrap_or_default();
        self.child_size = new_child_size;

        self.actual_rect = app_state.get_content_rect(self.id);
        eprintln!(
            "child-size: {:?} \nnew-child-size: {:?} \nactual-rect: {:?}\n",
            child_size, new_child_size, self.actual_rect
        );

        // Round to prevent loops due to floating point accuracy
        if (child_size * 128.0).round() != (new_child_size * 128.0).round() {
            app_state.request_layout(self.id);
        }
    }

Minimized example.
fn settings_page() -> impl View {
      stack((
          text("Settings"),
          scroll(
              stack((
                  text("new thing"),
                  text("new thing"),
                  text("new thing"),
                  text("new thing"),
                  text("new thing"),
                  text("new thing"),
              ))
              .style(|s| {
                  s.gap(PxPct::Px(0.), PxPct::Px((6. * 2.) as f64))
                      .width(75.pct())
                      .flex_col()
              }),
          )
          .style(|s| s.width_full().flex_grow(1.).justify_center()), // <- If I set an explicit height here then the scroll works properly.
      ))
      .style(|s| {
          s.set(GRAY)
              .size(70.pct(), 30.pct())
              .items_center()
              .gap(PxPct::Px(0.), PxPct::Px((6. * 2.) as f64))
              .padding(6.)
              .flex_col()
      })
      .on_click(|_| true),

}

Try using flex_basis(0).min_height(0) on the scroll. There isn't anything that preventsthe scroll from growing beyond the window in your example.

That works!! Seems like this is just my skill issue with css.
Thanks.


How compare &Path and &Ident ?

I want compare &syn::Path and &syn::Ident
there is method Path::is_ident for it: https://docs.rs/syn/0.15/syn/struct.Path.html ,
but I can not call it.
In other words I want to write something like this,
but such code doesn't compile.
fn f(p: &Path, i: &Ident) {
    p.is_ident(i);
}

I can fix it via call of clone, but creation of new object for comparing looks strange,
also I can introduce new type:
struct IdentRef<'a>(&'a Ident);

impl<'a> PartialEq<IdentRef<'_>> for Ident {
    fn eq(&self, o: &IdentRef<'_>) -> bool {
        self == o.0
    }
}

and fix f via path.is_ident(IdentRef(id)),
is it by design that is so hard to use or I missed something?

I think the signature of Path::is_ident is the one I want. You could try sending a PR to proc-macro2 adding whichever PartialEq impl is missing.

This is fixed in 1.0.0, you can now pass &Ident to path.is_ident.


The select dropdown is not working properly in landscape orientation on IOS devices

When I try to use it in landscape orientation on IOS devices, the screen change to portrait and the menu doesn't appear on the screen.

updated in v1.4.0


(Enhancement) Need to add --activation-arg

We need to be able to click on the toast and open a link or do something.
Something like this lib : https://github.com/go-toast/toast
Thanks..

Go-toast is my inspiration to make the same thing using python. That feature is already exists since the first release. --activation-arg is equivalent to --open-url in winotify. Go give it a try and i'll close this thread.


Fix diode spacing

Diodes need to moved away for the pg1232 footprint and be placed on the outer lines themselves.
The current location might cause clearance issues between the diodes and switches.
See for measurements: pg1232 schematics.
In a nutshell the switch external housing is 14.50x13.05.

Built a keyboard using the current spacing, luckily it works though requires careful placement.


More from Microsoft should highlight Hours of Code from Minecraft, micro:bit, and Arcade

Let's change this to have the micro:bit HoC offerings first, Minecraft second, and our multi-year HoC page third.
We should also make it clear in the text that each of these is another Hour of Code option.

This was fixed and can be seen on the site now https://arcade.makecode.com/hour-of-code-2022

Doesn't appear to be fixed. Still not highlighting that these are Hours of Code…and now there are 2 arcades?

Fixed and merged https://arcade.makecode.com/hour-of-code-2022


Report generation: error toasts should never disappear

Steps to reproduce:

create new report
do something wrong (I actually still don't know what I did wrong)
click "generate report"

Expected behavior:

Many toast notifications describing progress appear and disappear in the right column
If there are any toasts describing errors, those toasts remain visible (pinned to top of column) until the user clicks the X on them to close them

Observed behavior:

a red error text flashes briefly and then disappears before I can read it full

I'll close this, as errors now go in the logs that are readily available in the UI.


profiling: Add the support for TiKV heap profiling

With https://github.com/tikv/tikv/pull/15695, TiKV now can fetch heap profiles remotely. So add the support for TiKV heap profiling on tidb-dashboard

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


ARM32 builds

People like myself use small SoCs to run and experiment with things like Kubernetes / Istio / etc. The trouble with running k8s on these arm boards is that more often than not, we need to compile everything for arm32. This is normally fine, but for someone like myself who isn't familiar with c++ cross compiliation, it is not as easy as I'd like.
I think providing arm32 binaries would be a boon to the arm/k8s community as it'd lower the entry requirements for running services such as Istio / Consul with sidecar proxies.
I am trying to build these binaries myself currently but am not totally confident that they will work as expected.
Thanks in advance.
uname -a
Linux node-3 4.14.150-odroidxu4 #2 SMP PREEMPT Mon Oct 28 08:07:45 CET 2019 armv7l GNU/Linux

related #82: there's upstream work ongoing to support ARM, primarily focusing on ARM64 though. Will see if we can get ARM32 build as well.

+1. It would be great to have ARM support. ARM64 support seems to be complete: https://www.envoyproxy.io/docs/envoy/latest/start/building.html#arm64-binaries

@alam0rt It has been a while (apologies) can you confirm that you still need arm32 and arm64 won't work for you? If so, we'll keep this open. Otherwise, we'll close it and focus on the other.

closing in favor of arm64 until someone asks to re-open this


Large portals fail to render correctly.

No error or warn in logs that i could see https://mclo.gs/MSJAsuh

Hm can't recreate, can you post the code used to create the portal?

I believe this was mostly fixed


Keras Core on H100

Hello to the developers of wonderful Keras-Core framework, I really want to deploy it for our users of the HPC, but we have not been able to find a tensorflow installation that can work with CUDA capability offered by Nvidia H100 GPUs.
The latest pytorch version does support H100 GPUs but without a working tensorflow installation we are unable to repackage and deploy our tensorflow codes as keras-core packages. If we could get a working tensorflow for H100 then it would be great for us as we can then use our pytorch dataloaders and trainers in conjunction with other codes that are written using tensorflow and Jax.
Is the tensorflow going to come out with a new version that works on H100 soon? or is there a workaround offered by the keras-core team?

This should be asked in github/tensorflow.

Uh, I see. Sorry, I misunderstood.
Yes, you don't require TensorFlow to run keras-core. I think there is a feature branch but I am not sure if it is merged yet to main.
cc. @fchollet

Yes, you don't require TensorFlow to run keras-core

TensorFlow is not required. You only need to install the backend package you need. For performance I would recommend JAX.


cannot control  overall with of clerk output

In ec07ed2701fb82ecac94c786a1310d7e324cab18 I've added a notebook showing how to control result width:

This is a duplicate of #54 but it was obviously not documented well enough.

I ment the 'default with' for all cells


cache.replicationgroup: Support pattern matching for engine version

At the moment, it is only possible to send in version 6.x for redis
engine version on redis 6, but AWS will return back a specific version
like 6.0.5.
In this case, redis will never become ready.
Description of your changes
Change the controller to consider the resource up to date when we
specify 6.x and have 6.0.5.
Fixes #622
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

added unit test
created redis 6.x cluster and check that it is ready

k get replicationgroup
NAME                               READY   SYNCED   STATE       VERSION   AGE
redis-s9c9r-vw7mx                  True    True     available   6.x       3h3m

@chlunde could you squash the commits?


setup documentation

changed template, initial API page and tutorials setup

Codecov Report

Merging #4 (6623234) into main (0280019) will increase coverage by 1.01%.
The diff coverage is 75.00%.


Load_config_file: false issues

Describe the bug

When I manually initialize Netlify CMS, using window.CMS_MANUAL_INIT = true and init({ config: { load_config_file: false, ... }}), I would expect to not need the config file anymore. But instead, it still tries to read the config file, and thus runs into errors.
To Reproduce

I have tested 3 situations, with only one providing near satisfactory results:

With no config file.

window.CMS_MANUAL_INIT = true;
init({
    config: {
        backend: {
            name: 'git-gateway',
        },
        load_config_file: false,
        // ...
    },
});

This results in an error: Error: Failed to load config.yml (404). This blocks users from being able to continue into the CMS.

With an empty config file.

window.CMS_MANUAL_INIT = true;
init({
    config: {
        backend: {
            name: 'git-gateway',
        },
        load_config_file: false,
        // ...
    },
});

This results in a blocking error as well:
config should have required property 'backend'
config should have required property 'collections'
config should have required property 'media_folder'
config should have required property 'media_library'
config should match some schema in anyOf

With no config file.

window.CMS_MANUAL_INIT = true;
init({
    config: {
        backend: {
            name: 'git-gateway',
        },
        // ...
    },
});

This also results in an error, but the the error page appears for a second and goes away, allowing the users to continue normal operation. The error again says: Error: Failed to load config.yml (404).
Expected behavior

I would expect any of the situations mentioned above to not result in an error. It seems Netlify CMS is still trying to access the config file even though it is supposed to be using the JavaScript based config.
Applicable Versions:

Netlify CMS version: 2.10.48
Git provider: Git-Gateway, GitLab
OS: Linux Mint 19.3 Tricia
Browser version: Brave 1.8.96 (Chromium 81.0.4044.138)

CMS configuration

Not existent :)
Relevant information on configuration found in reproduction section.
Additional context

This is through Vanilla JavaScript, and not NodeJS or React.

Are you setting the window.CMS_MANUAL_INIT before importing netlify-cms for the first time?
It should be
window.CMS_MANUAL_INIT = true;

import CMS, {init} from 'netlify-cms';

init(...);

If that still doesn't work try putting the window.CMS_MANUAL_INIT = true; in a script tag in your index.html before including your js file.

That appears to be the issue. I set the variable after loading the Netlify CMS script. Moving it like you said allows me to use the third scenario without any issue.

Perfect!
We should take this as a hint to improve the docs to address the necessary order of operations more clearly.

Thanks @HeyITGuyFixIt  for reporting and @hanneskuettner for following up with a solution.
Just to clarify, this is the example from the docs - that works right?:

I think we can remove the following comment:

Injecting config is technically already possible by setting window.CMS_CONFIG before importing/requiring/running Netlify CMS, but most projects are modular and don't want to use globals, plus window.CMS_CONFIG is an internal, not technically supported, and provides no validation.

And replace it with a clarification on setting that global flag before importing the CMS, WDYT?

@erezrokah that's a great solution I think!

That's definitely a good idea. For those using React, there probably isn't any confusion with the current example given in the docs. But with those using Vanilla JavaScript, like me, the docs aren't clear on this implementation. Especially with those like me that don't know NodeJS or React. Those not using React or NodeJS but having a good knowledge of those may be able to infer the necessary order of things, but it still ought to be clearer.

I'm running into this problem as well on my gatsby site during local development.  I'm using gatsby-plugin-netlify-cms and the netlify-cms-app dependency in place of netlify-cms.  I'm manually initializing the configuration in a Javascript file.
import collections from "./collections"
const config = {
  backend: {
    branch: "master",
    name: "github"
  },
  load_config_file: false,
  local_backend: true,
  media_folder: "static/assets",
  collections
}
export default config

I'm running npx netlify-cms-proxy-server
It seems to work properly after I nuke the public and .cache folders in the repository, but it stops working randomly thereafter.

Hi @R-Bower, when using Gatsby with the CMS plugin you don't need to create a index.html file at all, and for using manual initialisation you need to set https://www.gatsbyjs.org/packages/gatsby-plugin-netlify-cms/#manualinit

Hi @R-Bower, when using Gatsby with the CMS plugin you don't need to create an index.html file at all, and for using manual initialisation you need to set https://www.gatsbyjs.org/packages/gatsby-plugin-netlify-cms/#manualinit

Confirmed working now, thank you!  I was using the documentation provided here to setup initially, and then switched over to the plugin.  Given that the netlify-cms package has deprecation warnings, should this guide be updated with a disclaimer?

You're right @R-Bower, individual guides should get more visibility in the docs.
Can you add your thought to https://github.com/netlify/netlify-cms/issues/3764?


Use Kokkos 3.4.01 in GitLab CI

Since we require a newer Kokkos release, we also need to update the GitLab performance regression tests to keep the running.

Any reason to pick 3.4.01 over 3.4.00?

Just to avoid any possible problems we fixed in the point release (I didn't check).

I agree this is a good idea. I would also like to have at least one 3.5.00 build.

Could do 3.5.00, too. Up to you.