Inline assembly Mul:2 Div:2 modifiers ignored

Take any working code with inline assembly.  Add mul:2 or div:2 modifiers to the assembly and your code will still work!
This is the assembly code I wrote to calculate tmp = 2 * a.x * a.y:
__asm( "v_mul_f64 %0, %1, %2 mul:2\n" : "=v" (tmp) : "v" (a.x), "v" (a.y));

Unfortunately, the documentation doesn't really spell out the fact that output modifiers are not compatible with denorms enabled, nor are they compatible with IEEE mode, and you are likely using both.

How can IEEE mode be controlled in OpenCL? (or controlled at all). What would disabling IEEE mode entail?

There is a whole section on the MODE register in the ISA document.  (Latest vega 7nm guide here: https://gpuopen.com/wp-content/uploads/2019/11/Vega_7nm_Shader_ISA_26November2019.pdf )
There are no compiler options to directly manipulate any MODE register fields.  I need to check on whether we turn off IEEE when flushing denorms.  Can you comment on why you're flushing denorms?

I see in the kernel ISA dump that the float_mode is always 240 (0xF0). That corresponds to IEEE_MODE being set unless I'm mistaken. This is for a compilation done with -cl-fast-relaxed-math.
According to the OpenCL docs https://www.khronos.org/registry/OpenCL/sdk/2.0/docs/man/xhtml/clBuildProgram.html
-cl-fast-relaxed-math:
Sets the optimization options -cl-finite-math-only and -cl-unsafe-math-optimizations. This allows optimizations for floating-point arithmetic that may violate the IEEE 754 standard and the OpenCL numerical compliance requirements defined in the specification in section 7.4 for single-precision and double precision floating-point, and edge case behavior in section 7.5. This option also relaxes the precision of commonly used math functions (refer to table 7.2 defined in section 7.4). This option causes the preprocessor macro FAST_RELAXED_MATH to be defined in the OpenCL program.
-cl-unsafe-math-optimizations:
Allow optimizations for floating-point arithmetic that (a) assume that arguments and results are valid, (b) may violate IEEE 754 standard and (c) may violate the OpenCL numerical compliance requirements as defined in section 7.4 for single precision and double precision floating-point, and edge case behavior in section 7.5. This option includes the -cl-no-signed-zeros and -cl-mad-enable options.
-cl-finite-math-only:
Allow optimizations for floating-point arithmetic that assume that arguments and results are not NaNs or ±∞. This option may violate the OpenCL numerical compliance requirements defined in section 7.4 for single precision and double precision floating point, and edge case behavior in section 7.5.
So the OpenCL doc seems to suggest that IEEE_MODE should be disabled when -cl-fast-relaxed-math is requested. This becomes more important as there is no other way to disable IEEE_MODE in OpenCL.

I would associate IEEE_MODE with -cl-finite-math-only (vs. flushing of denormals), as IEEE_MODE in my reading from the ISA doc seems to be concerned with the handling of NaNs and maybe INFs.

After more careful consideration, I see that  float_mode = 240 indicates that denorms aren't flushed (top 4 bits), and there is a separate enable_ieee_mode which is set. So the question becomes, is this the intended behavior of -cl-fast-relaxed-math ?

I can confirm that adding these two lines to the start of the kernel fixes the problem.  I'll leave it to others to work out whether the OpenCL -cl-fast-relaxed-math switch is setting bits properly.
__asm("s_setreg_imm32_b32 hwreg(HW_REG_MODE, 9, 1), 0\n");  __asm("s_setreg_imm32_b32 hwreg(HW_REG_MODE, 4, 4), 5\n");

Hi @gwoltman, please close this ticket if your issue has been resolved.  Thanks.

Closing ticket.  I'm no longer doing Radeon VII development work.


proto Changes

MEV-related stuff has been removed from the standard P4Runtime.proto and p4info.proto and put into a separate idpf/ package.
This CL addresses this new change which directly impacts PacketModMeter and DirectPacketModMeter extern

The Bazel buildsystem needs to be updated to include the two new .protos.
The p4runtime repository rule in the Stratum WORKSPACE file needs to be updated to the SHA of your commit.

It appears that you missed updating references to the old meter definitions in p4_info_manager_mock.cc.
                 from stratum/hal/lib/p4/p4_action_mapper_test.cc:14:
./stratum/hal/lib/p4/p4_info_manager_mock.h:73:47: error: ISO C++ forbids declaration of 'type name' wit
h no type [-fpermissive]
   73 |                      ::util::StatusOr<const ::p4::config::v1::PacketModMeter>(
      |                                               ^~
./stratum/hal/lib/p4/p4_info_manager_mock.h:73:77: error: template argument 1 is invalid
   73 |                      ::util::StatusOr<const ::p4::config::v1::PacketModMeter>(
      |                                                                             ^
./stratum/hal/lib/p4/p4_info_manager_mock.h:72:3: error: template argument 1 is invalid
   72 |   MOCK_CONST_METHOD1(FindPktModMeterByID,
      |   ^~~~~~~~~~~~~~~~~~
./stratum/hal/lib/p4/p4_info_manager_mock.h:72:3: error: template argument 1 is invalid
   72 |   MOCK_CONST_METHOD1(FindPktModMeterByID,
      |   ^~~~~~~~~~~~~~~~~~
./stratum/hal/lib/p4/p4_info_manager_mock.h:73:47: error: ISO C++ forbids declaration of 'type name' wit
h no type [-fpermissive]
   73 |                      ::util::StatusOr<const ::p4::config::v1::PacketModMeter>(
      |                                               ^~
./stratum/hal/lib/p4/p4_info_manager_mock.h:73:77: error: template argument 1 is invalid
   73 |                      ::util::StatusOr<const ::p4::config::v1::PacketModMeter>(
      |                                                                             ^
./stratum/hal/lib/p4/p4_info_manager_mock.h:72:3: error: template argument 1 is invalid
   72 |   MOCK_CONST_METHOD1(FindPktModMeterByID,
      |   ^~~~~~~~~~~~~~~~~~
./stratum/hal/lib/p4/p4_info_manager_mock.h:72:3: error: template argument 1 is invalid
   72 |   MOCK_CONST_METHOD1(FindPktModMeterByID,
      |   ^~~~~~~~~~~~~~~~~~
./stratum/hal/lib/p4/p4_info_manager_mock.h:72:3: error: template argument 1 is invalid
   72 |   MOCK_CONST_METHOD1(FindPktModMeterByID,
      |   ^~~~~~~~~~~~~~~~~~
In file included from external/com_google_googletest/googlemock/include/gmock/gmock-actions.h:147,
                 from external/com_google_googletest/googlemock/include/gmock/gmock.h:59,
                 from stratum/hal/lib/p4/p4_action_mapper_test.cc:14:
./stratum/hal/lib/p4/p4_info_manager_mock.h:73:47: error: ISO C++ forbids declaration of 'type name' wit
h no type [-fpermissive]

Two tech tips:

If you're changing a symbol, it's a good idea to grep the codebase for occurrences you've missed.
Any time you work on a class in Stratum, there are generally four associated files:

Source file (wombat.cc)
Header file (wombat.h)
Unit test (wombat_test.cc)
Mock (wombat_mock.h)


TexturePacker has no output and no error!  Nothing happens at all!

I am attempting to run TexturePacker with this command:
java -cp com.badlogic.gdx.tools.texturepacker.TexturePacker <location_of_jar>\runnable-texturepacker.jar  inputFolder outputFolder
Using Latest nightly build of texture packer downloaded here:
https://libgdx.badlogicgames.com/nightlies/runnables/
On Windows 7 with Java version 1.8.0_171
And nothing happens.  Nothing at all.  No errors, nothing about missing files, and nothing changes in the input and output folder.
Can anyone please help with ideas?

Figured out it doesn't run on TGAs.   And instead of telling you some kind of output, it just silently runs and ends with no results.


OmniSSM cleanup

Remove old/unused test, shorten Manager constructor func, add test target to Makefile.  One of the tests from the previous omnissm PR was also failing because of a typo, which is now fixed.

The travis failure is obviously unrelated to these changes, but unsure what the deal might be there causing it to fail, should the tests just get another run or is something broken in master?

unclear, trunk reports good on drone and travis atm. i'll try a push on another branch.


Lodestar 2023 Q1 roadmap

Main focus: increase adoption
Increase adoption

[x] Complete security audit
[x] Add to launchpad
[x] Integrate with RocketPool https://github.com/ChainSafe/lodestar/issues/3687
[x] Integrate with DAppNode https://github.com/ChainSafe/lodestar/issues/5044

Lightclient

[x] Capella compatibility https://github.com/ChainSafe/lodestar/pull/5027 https://github.com/ChainSafe/lodestar/issues/5102
[ ] Lodestar light (PoS) https://github.com/ChainSafe/lodestar/issues/4705

Network features

[x] Develop capella HF https://github.com/ChainSafe/lodestar/issues/5245
[ ] Develop deneb HF https://github.com/ChainSafe/lodestar/issues/5279

Closing for #5382


No sonoma link for macrecovery

In preparation chapter there is no Sonoma link for macrecovery download, but project description mention Sonoma as one of the main versions.
Can I just use the latest sonoma link in macrecovery list?

The Ventura command downloads the recovery utility for macOS Sonoma... do not ask me why

The Ventura command downloads the recovery utility for macOS Sonoma... do not ask me why

Yep. I thought I was doing something wrong. By the chance, did you get Sonoma on your machine? The best I've got is fully working Monterey, but I want so badly to try Sonoma, but it boot loops after  I've done everything by the tutorial. Bootloop, after downloading all installation files, does not get to choose region selection

Nope, getting the same exact problem here. I found this command python ./macrecovery.py -b Mac-4B682C642B45593E -m<PHONE_NUMBER>0000000 download that seems to install macOS Ventura though, so I'm trying this next.

Good luck,
https://dortania.github.io/OpenCore-Install-Guide/installer-guide/mac-install-recovery.html
Has this listed as lastest Sonoma:
python3 ./macrecovery.py -b Mac-937A206F2EE63C01 -m<PHONE_NUMBER>0000000 download
maybe it will work on your machine

If someone boot looping after installing Sonoma, the solution is
Disable Apple SecureBoot in your config.plist,
Misc->Security->SecureBootModel set as Disabled (case-sensitive)
Once 'Install macOS' entries are done doing the installation, the bug should have sorted itself out. And then you may set it back to Default


Design the API.

[ ] Prefer storing input value/state on context, but fall back to local state if no context is provided.

Input
const Input = controlled('input')({
  defaultProps: {
    type: 'text',
    value: 'hello world'
  }
})

render(<Input name='foo'/>)

/*
  <input type='text' name='foo' value='hello world' onChange={[Function]} onBlur={[Function]}/>
*/

Message
import Message from 'controlled-components/message'

render(
  <Message name='foo'>
    { ({ message }) => { message } }
  </Message>
)

/*
  A validation message from field "foo".
*/

import controlled from 'controlled-components'

const Input = controlled(({ id, label, ...props }) =>

    { label }
    <input type="text" id={id} className='form-control' {...props}/>

, {
  displayName: 'Input',
  defaultProps: {
    value: ''
  }
})

createMessage
import { createMessage } from 'controlled-components'

const InvalidAge = createMessage(({ error }) =>

    { error }

)({
  displayName: 'InvalidAge'
  validate: ({ age }) => age < 21 && 'You are too young. I cannot help you.'
})

render(<InvalidAge/>)

/**
 *

 *   You are too young, I cannot help you.
 *

 */

createMessage (Multi Field Validate)
import { createMessage } from 'controlled-components'

const InvalidSchedule = createMessage(({ error }) =>

    { error }

)({
  displayName: 'InvalidSchedule'
  validateFields: ['checkIn', 'checkOut'],
  validate: ({ checkIn, checkOut }) => checkIn >= checkOut && 'Check in date must be before check out date'
})

render(<InvalidAge/>)

/**
 *

 *   Check in date must be before check out date
 *

 */

What about this?
import { createMessage } from 'controlled-components'
const InvalidSchedule = createMessage(({ error }) =>

    { error }

)({
  displayName: 'InvalidSchedule'
  fields: ['checkIn', 'checkOut'],
  error: ({ checkIn, checkOut }) => checkIn >= checkOut && 'Check in date must be before check out date'
})
render()
/**

Check in date must be before check out date

*/

Whats the advantage to the curry?

ya thats probably more clear

Whats the advantage to the curry?

I can't remember my exact motive, but currying creates seams in the code for reuse and testability.

Will "validate" be passed the full field value object? looks like in "createMessage" but I want to make sure my assumption is correct.

I don't think it should, I think asking for fields explicitly should be our default.

Is error the right right name? Because a createMessage could also be a hint that shows and hides based off of a function?

the word error is the best for reasoning about and error but do we also allow for "validate" type functions under another name for the other use cases?

Is error the right right name? Because a createMessage could also be a hint that shows and hides based off of a function?

Agreed.
import { createMessage } from 'controlled-components'

const InvalidSchedule = createMessage(({ message }) =>

    { message.error }

)({
  displayName: 'InvalidSchedule',
  message: {
    error: {
      fields: ['checkIn', 'checkOut'],
      validate: ({ checkIn, checkOut }) => checkIn >= checkOut && 'Check in date must be before check out date'
    }
  }
})

render(<InvalidSchedule/>)

/**
 *

 *   Check in date must be before check out date
 *

 */

So the property is arbitrarily chosen by the developer and, if they really want to, they can have any combo of hint, error, whatever. We don't have to care.

yes this works and its nice if you want to bundle some things like hints and errors

It might be nicer to use if we just give them all form values.
const InvalidSchedule = createMessage(({ message }) =>

    { message.error &&

        { message.error }

    }
    { message.info &&

        { message.info }

    }

)({
  displayName: 'InvalidSchedule',
  message: {
    error: ({ checkIn, checkOut }) => checkIn >= checkOut && 'Check in date must be before check out date'
    info: ({ checkIn }) => checkIn < Date.now() && 'You are a wizard...'
  }
})

This makes it possible to mix them if you really want to and it's not crazy verbose.

I'm not completely in love with the term "message". Here's a possible alternative.
import { createHint } from 'controlled-compnents'

const InvalidSchedule = createHint(({ messages }) =>

    { messages.error &&

        { messages.error }

    }
    { messages.info &&

        { messages.info }

    }

)({
  displayName: 'InvalidSchedule',
  messages: {
    error: ({ checkIn, checkOut }) => checkIn >= checkOut && 'Check in date must be before check out date'
    info: ({ checkIn }) => checkIn < Date.now() && 'You are a wizard...'
  }
})

And maybe we could support the basic case too?
const InvalidSchedule = createHint(({ hint }) =>

      { hint }

)({
  displayName: 'InvalidSchedule',
  hint: ({ checkIn }) => checkIn < Date.now() && 'You are a wizard...'
})

How does "Form" know what "hint" wants or does it get the entire fields object?

🤔 good question. maybe it should be constrained to specify at that point?
const InvalidSchedule = createHint(({ hint }) =>

      { hint }

)({
  displayName: 'InvalidSchedule',
  field: 'checkIn',
  hint: checkin => checkIn < Date.now() && 'You are a wizard...'
})

But I agree with this for something like an Input field. Where you implicitly get your own fields value. That you can then validate.

As in something like this
const Input = controlled('createControl',
)({
  displayName: 'CheckIn',
  hint: myField => myField > Date.now() && 'You are a wizard...'
})

Yeah, we'll definitely need to play around with this. One of my goals with the public API is that we use it internally to create our pre-fabbed components.
This should work too.
import Hint from 'controlled-components/hint'

render(<Hint field='checkIn'/>)

I really like that.

So altogether something like this.
import Form from 'controlled-components/form'
import Hint from 'controlled-components/hint'
import Input from 'controlled-components/input'

const handleSubmit = (values) => {
  console.log(values)
}

const hintUsername = username => {
  return !!username.trim() && 'Please fill out your name'.
}

render(
  <Form onSubmit={handleSubmit}>
    Username
    <Input name='username' hint={hintUsername}/>
    <Hint field='username'/>
  </Form>
)

Invalid:
<form>
  Username
  <input type="text" id="username" name="username" value=""/>
  Please fill out your name.
</form>

Valid:
<form>
  Username
  <input type="text" id="username" name="username" value="Russell"/>
</form>

Why is plain text invalid?

Fixed.

BANG BANG BANG

Are we compassable just like normal react? so you can use something like this over the stock components?
const EmailField = createControlled(() => (
    Email
    <Input name='username' hint={hintUsername}/>
    <Hint field='username'/>
))({
  displayName: someVar,
  hint: myField => someValidation(myFiled)
})

No, this might "work" but as it is now, there would be four layers of HOC.

Field

Control

Field

Control

Field

Control

But something like this might.
const EmailField = createControlled(({ field, ...props }) => (
    Email
    <input {...props}/>
    <Hint field='username'/>
))({
  displayName: 'EmailField',
  hint: email => someValidation(email)
})

I guess I'm not super clear what you mean, but nesting Controls is probably a bad idea.

You answered what I was looking for.

Ok so I'm trying to wrap my head around conditional rendering for things without the use of props. What do you think the best way to get the value of other fields is. Something like this?
import { Form, Select } from 'conrolled-components'

const CarModelSelect = createControlled(({fields}) => (
    <select>
        {fields.carMake === 'toyota' && (
            <option value='camry'>Camry</option>
            <option value='corolla'>Corolla</option>
        )}
        {fields.carMake === 'hyndai' && (
            <option value='elantra'>Eleantra</option>
            <option value='genesis'>Genesis</option>
        )}
    </select>
))({
    displayName: 'CarModel',
    getFields: ['carMake']
})

render(
    <Form>
        <Select id name='carMake'>
            <option value='toyota'>Toyota</option>
            <option value='hyundai'>Hyundai</option>
        </Select>
        <CarModelSelect/>
    </Form>
)

There's probably invalid code in here I was just trying to throw something up that roughly made sense.

Or do you as a user grab it from context directly? I think I rather not do that.

Oh shoot you would have to rerender if the value changed so this issue is very related to the messages problem we solved. But inputs don't get a triggered rerender when fields change :(

There is a lot of different concerns on this thread I'll try to move this out somewhere else.

I decided to abandon the passing a String to createControl. It got too ugly when I tried to incorporate radio buttons.

So given all we talked about regarding props this is roughly what I picture.
Idea
field

access to all of the fields
way to query fields status example (touched, dirty ...)

form

function for requesting a given field validates

message

Object that takes validation functions

these functions get a "fields" as the first argument

Objects
// field
////////////////////////////
{
    foo1: {
        value: 'some value',
        touched: true,
        dirty: true,
        settings: {
            touchable: true
        }
    },
    foo2: {
        value: 'some other value',
        dirty: false,
        settings: {
            touchable: false
        }
    },
}

// form
////////////////////////////
{
    validate: (fieldName) => {/*some code*/},
    setttings: {
        touchable: true,
    }
}

// message
////////////////////////////
// user specified keys for validation functions
{
    hint: fields => fields.age > 18 ? 'Are you sure' : null
    error: fields => fields.age > 21 ? 'You are to young' : null
}

Feel free to fill that in with things I'm missing.

shoot messages doesn't belong in props right thats for contracting the component

It looks like you have the idea.
But now that I'm thinking about it, we should be super careful to stick to real scenarios to justify a larger API surface. I could be wrong, but I feel like some of the features of Redux Form's fields were added just because someone realized it was possible, not because it was needed.

I broke down and snagged the name. Do you have an NPM account? I can add you to the collaborators list.

I'd like to build a large JavaScript quiz with this for fun, profit, and measuring perf. If you can think of any questions, lemme know.

I just created one mouse-zero

I decided not to implement pre-made controls for now, but the underlying infrastructure is there now.


[serverless-1.29.0] Patch PAC template in order to use midstream tekton tasks

Patch Pipeline as Code template in order to use midstream Tekton tasks.

/cc @lance
This PR is desired in case a new kn client build is required.


Vizual fixes

Improved margins at github icon. Improved margins on drawings that at 13 you could not see them. Added class to the paragraph.
@marcinwyszynski

✅


Scalatest 3.0.0

Coverage remained the same at 82.051% when pulling e1b9a1933f32b5eb46ff9bd3b0de56c8a94943d6 on sullis:scalatest-3.0.0 into 6d497eb29b5ac02a0329b952c15bf79a1d10e28d on gilt:master.

👍


[move][adapter] Static init rules

Made init rules static
The existence of the function is optional
The function must be named 'init'
The function must be private
The function can have a single parameter, &mut TxContext
Alternatively, the function can have zero parameters

See #1323

Cool! Thank you for taking on this!
A few questions for discussion:

Would a more irregular name help distinguish it? like init?
Why not public? Now that we can verify it statically, we can make it public, and not allow anyone making function calls to any function with this name except in tests. This will make it easier to write tests.

Why not public? Now that we can verify it statically, we can make it public, and not allow anyone making function calls to any function with this name except in tests. This will make it easier to write tests.

The intention was to emphasize the fact that this is not a "regular" (callable) function.

The intention was to emphasize the fact that this is not a "regular" (callable) function.
Well, private function only constrains other non-friend modules from calling it. You can still call it from within and friend modules. So I think a verifier that forbids calling it is needed anyway. If so, we can make it public

More on this part, this this rule already in place? That is, should there be a rule that no one can call init functions? Is that rule already in place? If not, it will make a followup PR

No there isn't. But I think we should have it?

I'll land this, with a followup for a "don't call init" init rule


Feature: Add button to abort updating the item image

The workflow when updating the item image in the Home section needs an option to abort the update and close the camera stream without action.

Fixed in https://github.com/maxxonair/inventory/commit/94b6c8c6720711d555b46d1ceb6047accf90df42


[BUG] Glances Issue

Environment
Self-Hosted (Docker)
System
No response
Version
No response
Describe the problem
I had Glances widgets working fine but recently it updated and it hasn't been working. I thought it might be something in my config file but everything there looks fine as far as I can tell. However, I did a bit of digging in my logs and found that the url being referenced by dashy's glances widget is http://<IP_ADDRESS>:61208/api/3/mem. I tried navigating to the page in my browser but it doesn't give any data: {"detail":"Not Found"} .
I then found out that glances has a 4th version of the api (guess that's recent?) -- so if I replace replace the 3 with a 4 like this: http://<IP_ADDRESS>:61208/api/4/mem. I get what looks to be data output:  {"total":33538297856,"available":22703775744,"percent":32.3,"used":10834522112,"free":22703775744,"active":6034456576,"inactive":24548749312,"buffers":135168,"cached":23524229120,"shared":753487872}
I would update the appended url string "/api/3/mem/" myself however, I'm not sure where Dashy actually stores that. Any chance the code could be updated relatively quickly? Seems like it could be an easy find/replace job.
Additional info
No response
Please tick the boxes

[X] You have explained the issue clearly, and included all relevant info
[X] You are using a supported version of Dashy
[X] You've checked that this issue hasn't already been raised
[X] You've checked the docs and troubleshooting guide
[X] You agree to the code of conduct

I just tested with the new api v4 version and it seems like most of the things work.
What threw an error:

type: gl-ip-address:

⚠ Warning ⚠ The IP plugin is not supported in this instance of Glances This is likely not an issue with Dashy, but rather your configuration.If you think it is a bug, please open a ticket on GitHub: https://git.io/JukXk

type: gl-network-traffic:

110Error: <path> attribute d: Unexpected end of attribute. Expected number, "M".
110Error: <path> attribute d: Expected number, "Mundefined,NaNLLu…".
frappe-charts.min.esm.js:1 Uncaught DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.
   at e.value (http://<IP_ADDRESS>:4000/js/chunk-50f31ec3.5ad55dde.js:1:42229)
   at e.value (http://<IP_ADDRESS>:4000/js/chunk-50f31ec3.5ad55dde.js:1:41749)
   at ResizeObserver.boundDrawFn (http://<IP_ADDRESS>:4000/js/chunk-50f31ec3.5ad55dde.js:1:40602)

![image](https://github.com/Lissy93/dashy/assets/96661824/1a08e475-2ddc-4004-a162-ecbfb6df89b4)

type: gl-cpu-temp:

Shows nothing on the dashboard, shows no erros, but seems broken.
![image](https://github.com/Lissy93/dashy/assets/96661824/0cf632e5-efd9-42cc-a5fa-81bc2a1c37cf)

Glances CPU temp could also be due to testing inside WSL but I enabled the sensors plugin.
@Lissy93 I'll get a PR ready to update to V4, but could you take a look at the above three widgets?

Same issue with latest version, it stopped working. I had to go to the previous version.

Same issue with latest version, it stopped working. I had to go to the previous version.

A fix has been release, just re-pull the :latest tag of the docker container and rebuild, then it should work again. :)

Same issue with latest version, it stopped working. I had to go to the previous version.

A fix has been release, just re-pull the :latest tag of the docker container and rebuild, then it should work again. :)

Weird...There's no change

Same issue with latest version, it stopped working. I had to go to the previous version.

A fix has been release, just re-pull the :latest tag of the docker container and rebuild, then it should work again. :)

Weird...There's no change

Can you share your browser console?
This can be found by right clicking anywhere in the browser and selecting the last entry, called develop, developer tools or similar.
Then you can seitch to the console tab on the rights side, please send a screenshot or copy +paste here
And also your dashy log?

Here is my console log:

It looks like the update is in place, and if I copy and paste the address (http://<IP_ADDRESS>:61208/api/4/mem) from there I can access the data feed directly in my browser.   However, it looks like it's not allowing it to talk to Dashy directly for some reason.  Unsure why this would be, unless something updated or changed on the Glances side of things, a few weeks ago all of this was working perfectly.

@mr-f0xx  and @Eviljubs
Those are CORS-Errors:
https://dashy.to/docs/widgets#troubleshooting-widget-errors
You can just add useProxy: true to each item.

Perfect, that worked, thanks!

For those using Nginx Proxy Manager

Create custom location / , apply default IP + Port
Press Gear Icon and set CORS header
add_header 'Access-Control-Allow-Origin' *;


Add property to enable/disable pruning at runtime

Rebase and cleanup of #358. Closes #358.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 77.77778% with 4 lines in your changes missing coverage. Please review.

Project coverage is 57.63%. Comparing base (907014c) to head (e9188d8).

Files
Patch %
Lines

core/test/test_pruning.cpp
60.00%
4 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #590      +/-   ##
==========================================
+ Coverage   57.23%   57.63%   +0.40%
==========================================
  Files         130      131       +1
  Lines       10434    10621     +187
  Branches      956      954       -2
==========================================
+ Hits         5971     6120     +149
- Misses       4416     4454      +38
  Partials       47       47

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


cmd/go: go version says file not executable on cross-compiled binary

What version of Go are you using (go version)?

$ go version
go version go1.18.3 windows/amd64

Does this issue reproduce with the latest release?
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\***\AppData\Local\go-build
set GOENV=C:\Users\***\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\***\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\***\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.18.3
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\***\AppData\Local\Temp\go-build934652975=/tmp/go-build -gno-record-gcc-switches

What did you do?

In both cases the result was:
<binary>: not executable file

When I run file <binary> I see the following:
<binary>: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=***, not stripped

What did you expect to see?
Build info for that binary.
What did you see instead?
Above message.

Is it for any build executable? can you share a built artifact?

It's for any executable.

go version on windows just checks the target file extension, if it ends with .exe it's an executable, else it's not:
https://github.com/golang/go/blob/c1110910713766eb06d75ed48db3722d318a845e/src/cmd/go/internal/version/version.go#L112-L118
Looking at the code, it works as expected, although I agree it could be smarter. Somehow related to #48187.

Obviously when you compile for other systems extension could be missing. I think this check is unnecessary. Moreover checking executable bit on Unix (if I understand logic correctly) also makes no sense. What if I just unzipped this from the archive and want to check that info. Why should I make it runnable just to be able to analyze contents? This misleads: "runnable" or "allowed to run" != "executable".

I've updated CL 391855 to remove the is-executable check, so all files go through buildinfo.ReadFile regardless of the file extension and the host OS.

391855 had been merged, I think this can be closed.


Not able to import vsc with the new PyPI release

Hi @mballance
I am not able to use the pyvsc with the latest PyPI release.
Can you look into this?

Hi @aneels3,
Have you tried upgrading the 'pyucis' package? I did make some additions to that package that pyvsc now depends on. Let me know if you've upgraded and are still facing difficulties.
Best Regards,
Matthew

Hi @mballance
It works after upgrading the pyucis package.
It would be really great if the user can able to installed the latest pyucis package while installing the pyvsc through PyPI.
Thanks


RESTORE HEADONLY in 2022 returns additional columns that are not documented.

The given schema for SQL Server 2022 and RESTORE HEADONLY is incorrect. In SQL Server 2022 there are 3 additional columns after EncryptorType:
LastValidRestoreTime
TimeZone
CompressionAlgorithm
The datatypes are unknown for these columns and I can't programmatically determine what the datatypes are, best guesses aren't enough as they have to be exact but there is no way to find out what the exact datatypes are.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: d9e8a50f-dd56-7b9e-58a8-7842710f9d1e
Version Independent ID: d1d3e45f-f441-95ce-34a3-38faeebc0da6
Content: RESTORE HEADERONLY (Transact-SQL) - SQL Server
Content Source: docs/t-sql/statements/restore-statements-headeronly-transact-sql.md
Product: sql
Technology: t-sql
GitHub Login: @MikeRayMSFT
Microsoft Alias: mikeray

@MichaelIRIS -- Michael, thank you for your feedback.  Please consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

@MikeRayMSFT -- Mike, please look into this issue.

@MichaelIRIS: my best guess would be: datetime, nvarchar(128), nvarchar(128). But I fully agree that this should be documented.
@MikeRayMSFT: it would be good to document also the values that would be found in these columns; for example, I get 104 in the TimeZone column and this seems to correspond to "(UTC+02:00) E. Europe" (according to https://docs.microsoft.com/en-us/dotnet/api/microsoft.sharepoint.spregionalsettings.timezones?view=sharepoint-server). Also, it would be good to know what other values can be found in the CompressionAlgoritm column, besides "MS-XPRESS".

Columns updated in previous PRs.


CHAD-8808 Qubino Thermostat:

Only display the currently configured mode's setpoint

@dsobierajsk could you help me out by generating a presentation to correspond to these changes?


conn_pool: Minor cleanups to ConnPoolBaseImpl

A few minor cleanups.

Add "Impl" suffix to methods in ConnPoolBaseImpl which shadow methods in ConnectionPool::Instance since ConnPoolBaseImpl does not actually implement this interfaces, but is extended by classes which do implement it and then need to disambiguate between the Base and Interface methods of the same name.
Use early return to reduce nested code.
Convert a few structs to classes since they extend classes

Risk Level: Low - No behavior change
Testing: N/A - No behavior change
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A

/assign @DavidSchinazi

@DavidSchinazi the diff shows a big chunk of changes in onConnectionEvent(), but that code is simply moving (and changing indentation) but is not actually modified. (It's moving from an "if (foo)" block to after an "if (!foo)" block returns.

/assign @alyssawilk

Let's chat about this when you're back - I like the naming changes but I think the early returns may not justify losing git history
/wait

I agree that it's annoying that refactors make git blame harder. In this case, I think there are a few things which argue in favor of the cleanup. The largest is that there are ~70 lines of code between the start of the if () and the end of the else if (). This means that if you're attempting to read this code, you have to page through (something like) 2-3 screenfuls of code to see if there is more logic after that block. It's also annoying that the code has one condition in the if () for the two close enum values (Local or Remote) and then another else if for Connected. But the code itself does not make clear if there are other values of the enum which are intentionally not handled. As it turns out, there are only 3. So this means that the if else could be replaced by simply an else. I'd argue that replacing it with an else (and a DCHECK that the value is Connected) would be a net with for readability. But once we've done that (and I did this initially :>) we end up with a 5-line bit of code after like 60 lines of code in the Close case. So moving this to the top and returning early seems like the logical thing to do in order to make the code easier to read.
@antoniovicente Can you be a tie-breaker here :)

/assign @antoniovicente

Let's chat about this when you're back - I like the naming changes but I think the early returns may not justify losing git history
/wait

I agree that it's annoying that refactors make git blame harder. In this case, I think there are a few things which argue in favor of the cleanup. The largest is that there are ~70 lines of code between the start of the if () and the end of the else if (). This means that if you're attempting to read this code, you have to page through (something like) 2-3 screenfuls of code to see if there is more logic after that block. It's also annoying that the code has one condition in the if () for the two close enum values (Local or Remote) and then another else if for Connected. But the code itself does not make clear if there are other values of the enum which are intentionally not handled. As it turns out, there are only 3. So this means that the if else could be replaced by simply an else. I'd argue that replacing it with an else (and a DCHECK that the value is Connected) would be a net with for readability. But once we've done that (and I did this initially :>) we end up with a 5-line bit of code after like 60 lines of code in the Close case. So moving this to the top and returning early seems like the logical thing to do in order to make the code easier to read.
@antoniovicente Can you be a tie-breaker here :)

Interesting tiebreak choice since I have been known to be someone that attempts to preserve git history at all costs despite consequences and keeps asking people to revert whitespace changes.  Also, I don't mind excessive nesting of code; I consider nesting preferable to non-trivial early returns like the one you added at https://github.com/envoyproxy/envoy/pull/17710/files#diff-1ca21bd145a8c09791b9659ca8cdfbec5dfb86067b8f4615981ae618ac31cc7fR419. :)

Interesting tiebreak choice since I have been known to be someone that attempts to preserve git history at all costs despite consequences and keeps asking people to revert whitespace changes. Also, I don't mind excessive nesting of code; I consider nesting preferable to non-trivial early returns like the one you added at https://github.com/envoyproxy/envoy/pull/17710/files#diff-1ca21bd145a8c09791b9659ca8cdfbec5dfb86067b8f4615981ae618ac31cc7fR419. :)

Heh, I chose you because I respect your judgement, not because I expected you to agree with me :) In any case, thanks for breaking the tie! I've reverted the early return change. PTAL


Error while setting up ims platform for sensor

Logger: homeassistant.components.sensor
Source: custom_components/ims/sensor.py:72
Integration: Sensor (documentation, issues)
First occurred: 10:21:37 PM (1 occurrences)
Last logged: 10:21:37 PM
Error while setting up ims platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 293, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/ims/sensor.py", line 72, in async_setup_platform
config_entry[IMS_PLATFORM] = [IMS_PLATFORMS[0]]
NameError: name 'config_entry' is not defined
I don't know if it makes a difference, but the sensors are in a separate file and not in a configuration file

got the same issue, not sure why...

I found the solution; you need to use the UI and not yaml to add this integration.

I found the solution; you need to use the UI and not yaml to add this integration.

What are the exact steps you followed to resolve?

You need to remove it from the configuration file and add it using the UI


Hex Colors under Windows

Hex (long or short) color support doesn't seem to working under Atom (Windows, SCSS file, React is enabled)

Hi, can you please update and re-try? sass support just added. Please report if it is not working still... ok?

Yup! Everything seems to be working fine in the current builds.

ok kool!


Feature: (POC) Docker execution support

This PR states a Prove Of Concept for issue #29.
The basic idea behind the changes:

Add docker support for people (like me) that don't run their dev environment on local machine but rather on virtual ones (vagrant, docker). This has nothing to do with the ability to provide execution in docker/vagrant or anything else, this is just pure dev sugar 😉 This could also be provided in an extra PR and merged right away if this is fine

Remove the actual hook implementation from the "hooks" it self and move them into a single point of execution (captain-runner.php - current working title, object to change)

CaptainHook\App\Hook\Template will now contain a environment specific script for executing the captain-runner.php. This needs to be split up to support different kind of templates:

Local (for local development on "host" machine)
Docker (obviously docker support)
Vagrant (as optional later addition)

CaptainHook\App\Hook\Runner was introduces which now contains the old implementation of the hooks

Here we have slight change to get the first argument, which is the hook that should be run
This gets removed, so we have the "old" behavior still intact for the app itself

Further changes that need to be done and should be discussed:

CaptainHook\Console\Command\Configuration should ask what kind of environment a user is using (local, virtual)

If its virtual we should als for the type (docker, vagrant, what ever)
After we know what environment the user is using - we need to gather more information for the specific environment: For docker its the container-name

There are some parts in this implementation that are non functional!
Like getting the container-name it self (as stated in what needs to be done)

For easier tests, simply take the final captain-runner.php content which will always be the same and place them directly beside the other hooks (.git/hooks)
<?php
$autoLoader = __DIR__ . '/../../vendor/autoload.php';

if (!file_exists($autoLoader)) {
    fwrite(STDERR,
        'Composer autoload.php could not be found' . PHP_EOL .
        'Please re-install the hook with:' . PHP_EOL .
        '$ captainhook install --composer-vendor-path=...' . PHP_EOL
    );
    exit(1);
}

$hook = $_SERVER['argv'][1];
array_splice($_SERVER['argv'], 1, 1);

require $autoLoader;
$config = realpath(__DIR__ . '/../../captainhook.json');
$app    = new CaptainHook\App\Console\Application\Hook();
$app->setHook($hook);
$app->setConfigFile($config);
$app->run();

Thanks for putting in the work for your POC.
I think I would prefer having the hook-runner in an actual file and not only on a template.
Putting it besides the captainhook binary as captainhook-run and registering it in the composer.json as binary so it will be moved to vendor/bin as well.
"bin": [
    "captainhook",
    "captainhook-run"
],

Then add a option to the install command
captainhook install --run-mode=local|docker|vagrant
I'm thinking about installing local by default or asking the user if no option is provided.
I'm leaning more towards installing local by default to not bother most users with a question that is hard to phrase in a way the user understands the problem we are trying to solve.

Do you have php installed where you execute your git commands?

Do you ...

I would argue none of these variants are understandable from a user standpoint. Users that are running docker or vagrant should run captainhook install --run-mode=docker manually.
Last thing we have to do is path the run-mode option down to the writeHookFile => getHookSourceCode => Template::getCode chain and enable the Template to return both variants, the default php version and the new docker and later vagrant versions.
Composer Plugin Users
We should add an option to the composer extra section. So you can provide the run-mode similar to the repository-path. So if you are using the plugin-composer package you can define the run-mode for the whole team if you want to.

Thanks for the reply. This is indeed a better and easier way to communicate with the user by using a run-mode.

Last thing we have to do is pass the run-mode option down to the writeHookFile => getHookSourceCode => Template::getCode chain and enable the Template to return both variants, the default php version and the new docker and later vagrant versions.

Wouldn't it be better to have multiple template classes to separate the actual behavior?

Yes indeed that would be nicer.
And we should use an Installer property instad of passing the mode all the way down.
CaptainHook\App\Runner\Installer

const RUN_MODE_LOCAL = 'local';
const RUN_MODE_DOCKER = 'docker';

...

/**
 * Run mode affects the hook implementation
 *
 * - local   - PHP is installed locally and git hooks can be php scripts
 * - docker  - PHP is not installed locally, use docker to create a container to execute CaptainHook
 * - vagrant - [PLANNED] A Vagrant VM is available to execute the hook
 *
 * @var string
 */
protected $runMode;

...

/**
 * RunMode setter
 *
 * @param string $runMode
 */
public function setRunMode(string $runMode) : void
{
    $this->runMode = $runMode;
}

...
protected function getHookSourceCode(string $hook) : string
{
    $absRepoPath = realpath($this->repository->getRoot());
    $vendorPath  = getcwd() . '/vendor';
    $configPath  = realpath($this->config->getPath());
    // resolve the right template for the current run mode
    $template = $this->createTemplate();
    return $template->getCode($hook, $absRepoPath, $vendorPath, $configPath);
}

/**
 * Creates the template responsible for the current run mode
 *
 * @return \CaptainHook\App\Hook\Template
 */
protected function createTemplate() : Template
{
    // return Template depending on $this->runMode
}

CaptainHook\App\Console\Command\Install
...

->addOption(
   'run-mode',
   'r',
   InputOption::VALUE_OPTIONAL,
   'git hook run mode [local|docker]',
   Installer::RUN_MODE_LOCAL
);

...

$installer->setForce($input->getOption('force'))
          ->setHook((string) $input->getArgument('hook'))
          ->setRunMode((string) $input->getOption('run-mode');

Sounds like a practical solution :+1:.
Will update the PR then.

As requested some changes in the implementation.
I also came across some missing return types on UnitTests. So I fixed them on the go.


Cannot run https

Expected behaviour
Should allow https
Actual behaviour
Chrome returns ERR_SSL_VERSION_OR_CIPHER_MISMATCH and firefox a similar version.
Environment Details

Karma version (output of karma --version): 2.0.0

Relevant part of your karma.config.js file

    httpsServerConfig: {
      key: fs.readFileSync('./tests/assets/privateKey.key', 'utf8'),
      cert: fs.readFileSync('./tests/assets/certificate.crt', 'utf8')
    },
    protocol: 'https:',

Steps to reproduce the behaviour

write a test that needs to be run in HTTPS
generate certificates
run karma.

Other infos
[x] I didn't set hostname or proxy.
[x] I've also used the certs that could be found in this repo (test directory)

Running into the same issue. Any progress?

Has anyone solved this?

@bobbyg603 does this reproduce still in the latest version? It seems to be a problem of how the certificate was generated.

It does. I believe it's pilot error - I'm an SSL novice and have no clue how to generate a key for our development domain (htaccess rule mapping localhost to local.bugsplat.com) on MacOS. FWIW you can bypass this screen by clicking the window and typing thisisunsafe but that's not a great long-term fix. Any links to articles to help us correctly set up our certificates would be greatly appreciated!

@bobbyg603 Check out this article I wrote it a while back. Please tell me if it helps.


SetSheetVisible not working properly

Am I doing something wrong here or SetSheetVisible not working properly?

Steps to reproduce the issue:
➜  cat go.mod
module example.com/xlsx

go 1.20

require (
	github.com/stretchr/testify v1.8.4
	github.com/xuri/excelize/v2 v2.7.1
)

require (
	github.com/davecgh/go-spew v1.1.1 // indirect
	github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
	github.com/pmezard/go-difflib v1.0.0 // indirect
	github.com/richardlehane/mscfb v1.0.4 // indirect
	github.com/richardlehane/msoleps v1.0.3 // indirect
	github.com/xuri/efp v0.0.0-20220603152613-6918739fd470 // indirect
	github.com/xuri/nfp v0.0.0-20220409054826-5e722a1d9e22 // indirect
	golang.org/x/crypto v0.8.0 // indirect
	golang.org/x/net v0.9.0 // indirect
	golang.org/x/text v0.9.0 // indirect
	gopkg.in/yaml.v3 v3.0.1 // indirect
)

➜ cat main_test.go
package main

import (
	"testing"

	"github.com/stretchr/testify/require"
	"github.com/xuri/excelize/v2"
)

func TestSetSheetVisible(t *testing.T) {
	f := excelize.NewFile()
	f.NewSheet("Sheet1")
	f.NewSheet("Sheet2")
	f.NewSheet("Sheet3")
	require.Equal(t, 3, f.SheetCount)

	require.NoError(t, f.SetSheetVisible("Sheet1", false))
	visible, err := f.GetSheetVisible("Sheet1")
	require.NoError(t, err)
	require.False(t, visible)
}

➜ go test -v ./...
=== RUN   TestSetSheetVisible
    main_test.go:20:
        	Error Trace:	/tmp/f/main_test.go:20
        	Error:      	Should be false
        	Test:       	TestSetSheetVisible
--- FAIL: TestSetSheetVisible (0.00s)
FAIL
FAIL	example.com/xlsx	0.006s
FAIL

Describe the results you received:
Sheet1 is visible.
Describe the results you expected:
Sheet1 should be invisible.
Output of go version:
go version go1.20.2 linux/amd64

Excelize version or commit ID:
github.com/xuri/excelize/v2 v2.7.1

Environment details (OS, Microsoft Excel™ version, physical, etc.):
➜ go env GOARCH
amd64
➜ go env GOOS
linux

Thanks for your issue. As the documentation of the SetSheetVisible function says: "If the given worksheet has been activated, this setting will be invalidated.". The worksheet Sheet1 was an active sheet by default, so if you want to make it hidden, please set another worksheet as the active sheet before hiding the Sheet1.

I closed this issue, if you have any questions, please let me know and reopen this anytime.


Add link to Keys in MainMenu

Link for basics/keys was missing in the MainMenu, so I fixed.

Thanks!


Add BLAZE

Hi, I'd like to add our new tools for single-cell barcode identification to this list.
Best,
Yupei

Hi @youyupei thanks for the addition! Can you resolve the conflict due to the addition of another chapter in the file? We will then merge the pull request. Thanks!


[ BUG ] Separator import fails with ts(4023)

Describe the bug
The Separator component code is not valid, as it emits ts(4023) error.
To Reproduce
Steps to reproduce the behavior:

Install @rn-primitives/separator
Import the Separator component into ~/components/ui/separator.tsx
Check TS Server output

Expected behavior
No issue in the imported code from tsc or TS Server.
Additional context
The issue happens due to SeparatorRootProps not being exported, but the type being used in the type definition of the component regardless:
const Separator = React.forwardRef<
  React.ElementRef<typeof SeparatorPrimitive.Root>,
  React.ComponentPropsWithoutRef<typeof SeparatorPrimitive.Root> // <-- here specifically
>(({ className, orientation = 'horizontal', decorative = true, ...props }, ref) => (

The solution would be to export SeparatorRootProps together with the Root element.

I don't have this error on WebStorm (TypeScript 5.3.3)

@ar3s3ru Please provide an minimal reproduction repo as I am unable to reproduce.

Closed due to inactivity


[feat] change api for cache

var cache = require('cache-element')
var html = require('bel')

var elInstance = null
var el = Element()

elInstance = el('Tubi', 12)
elInstance = el('Tubi', 12) // returns cached element (proxy)
elInstance = el('Babs', 12) // creates new element

function Element () {
  return cache(function (name, age) {
    return html`

The person's name is ${name}

The person's age is ${age}

    `
  })
}

Keeps var is local scope which means less messing around with prev. In this case the compare arg is still optional, but by default it compares the list of args passed in the prior run against the subsequent run

done!


Add MANAGED_SHALLOW_CLONE to TableType Enum

Changes

Adds a new value to TableType - MANAGED_SHALLOW_CLONE is a table type in Databricks that's currently not present in the TableType Enum.
I was not able to find documentation on this (aside https://docs.databricks.com/en/delta/clone-unity-catalog.html), but here's an API call that fetches a table in a schema with the type MANAGED_SHALLOW_CLONE:

Tests

I made an attempt to run tests, but some of them fail on my main branch before any changes, so I couldn't reliably run them.

[ ] make test run locally
[ ] make fmt applied
[ ] relevant integration tests applied

Replaced by #632


message feed: Add a highlighted horizontal divider highlighting the new/unread messages

Currently, the Zulip UI has two unread states: read, and unread.  Several chat products display three unread states: read, recently read (i.e. read just now in the current client), and unread. We should adopt a similar middle state as well.
The middle state is nice for a few reasons:

When you land on a narrow, it's clear where the "new" messages start, even if the product has already marked everything in the view as read.
Zulip's unread markers are pretty subtle, and my guess is the majority of new-ish users have not discovered them. A recently read state will help users understand what Zulip's "mark as read" algorithm is.
It'll hopefully make the blue box feel less random. E.g. the blue box will now always be at "the oldest recently read message" when you land in a narrow.

There are two strategies I've seen employed by other products. The first is a per-message marker (cf hangouts meet), which I think we don't have space for in the current layout. The second is to do something like the following in stream, topic, and All messages narrows:

Some notes:

Only applies to stream, topic, and all messages narrows
Only applies if there is at least one read message above the oldest unread message
If the oldest unread message is at the top of a recipient block, it goes above the recipient block. Otherwise it goes above the message.
The image above is a screenshot from elsewhere, not a mockup for Zulip. For Zulip lets not put "new messages" in a pill.
If there is a date header there, it replaces the date header (just change the color of the date header and add "new messages" on the right
If there is no date header, it's just a line with "new messages" on the right hand side (no date)

Some notes on how this should work technically:

This is a frontend-only feature, because all the necessary data is there in the frontend already.  The webapp should be able to set this in the message_list_view rendering logic by just looking for the first unread message in the messages it has available, and setting a bit on that to trigger the divider bar.  Some reading of the existing logic for date dividers will be very helpful in doing this.  (We might even want to, code-wise, consider these to be "date dividers" with a bit for whether the date actually changed).
Important context is we have two types of date dividers -- group_data_divider (i.e. not inside a block of messages all with the same recipient) and message_date_divider (in between two messages all with the same recipient).  We'll need to make the code paths work.
One thing that is kinda a mess with this is that if you're in a stream narrow, there may be already-read messages below some of the read messages because you read those in a topic narrow.  I think for now we'll probably just want to start with just showing in single-PM-thread + topic narrows and we can worry about that extension later.

@vaibhavsagar would you be interested in working on this? It might relate to your other message feed work.

I think you meant @vrongmeal.

Yeah! I'll take this up.
@zulipbot claim

@zulipbot claim

It'll hopefully make the blue box feel less random. E.g. the blue box will now always be at "the oldest recently read message" when you land in a narrow.

@rishig I did not get this part

oh, I just meant that when you go to say a stream narrow, the blue box is at the oldest recently read message, but there's currently no indication in the UI of that fact. (It's not a particularly important point.)


Backend nvmf multipath

Storage backend test command is updated to create/delete path and to list remote nvmf namespaces.
goopicsi is updated with some shortcuts. After merging, an issue should be created to address left TODOs

CA failed since ran without https://github.com/opiproject/opi-spdk-bridge/pull/461


Incorrect namespace when composer is not in the root directory

I have a monorepo, where all the php files live under php/, with the composer file residing at php/composer.json.
If php/src was mapped to App\, then when generating a new class in php/src/Libs, I would expect the namespace to be App\Libs, but the namespace is php\App\Libs.
This is only happening after 0.15.0.

@andythorne  If I understood correctly, you have a folder that is the one you have opened in vscode, which contains another php folder and that is where the composer.json file is located.
Trying to reproduce your issue, I have these folder structure:
projects
└── php
    ├── composer.json
    └── src
        └── Libs

And the autoload part of composer.json can be something like this:
{
    "autoload": {
        "psr-4": {
            "App\\": "php/src/"
        }
    },
}

Note the last slash after php/src, it should be optional, but I recognize that there's currently a bug I'm fixing that makes that last slash necessary at the moment of writing this.
But this is not related by your issue.
Also note that adding this php/src folder in this composer.json I think is invalid.
The autoload spec says that folders should be relative to the location of composer.json, so adding the phppart is invalid since composer.json is already in that folder.
Anyway, I have tested and the extension has correctly generated the namespace as App\Libs.
In next gif you can see the test that I have done:

Hey, this is my setup that will recreate the issue:
directory structure:
projects
└── php
    ├── composer.json
    └── src
        └── Libs

php/composer.json:
{
    "name": "some/test",
    "type": "library",
    "version": "1.0.0",
    "autoload": {
      "psr-4": {
        "SomeThing\\": "src/"
      }
    }
  }

Steps to recreate:

Create a new class called Test in php/src/Libs
Namespace will be namespace php\Jefb\Framework\Libs;, not Jefb\Framework\Libs.

<?php

declare(strict_types=1);

namespace php\Jefb\Framework\Libs;

final class Test
{

}

@andythorne I just published an update with a fix for this problem.

Thank you! 🙏

@jaguadoromero
I am not sure you fixed the problem. Perhaps the fix has created a bigger problem. Refer to Issue #23


Guidance ROUGE

Hi @zdou0830!
I just measured ROUGE scores for the guidance sentences you provided, and got the following result:
R1/R2/RL: 43.89/20.63/39.79
This a bit different from the MatchSum result reported in the paper:
R1/R2/RL: 44.41/20.86/40.55
I used files2rouge for ROUGE evaluation as suggested in Bart for summarization, with the default setting of
-c 95 -r 1000 -n 2 -a.
Could you please check this result on your end? Maybe I missed something.
Thank you!

Hi @yumoxu,
Thanks! For this case, I think the difference is mainly because when evaluating abstractive models, files2rouge would treat "." as sentence boundaries, but when evaluating extractive models, we viewed each extracted sentence as one sentence (no matter whether it ends with "."). The results are directly taken from MatchSum's paper and I'll double-check that.

Thanks for your swift reply!
Just want to confirm there is nothing wrong with my evaluation setup :) And this makes a lot of sense!


Can this run on Web?

Hey @jsmith. I want to run this as a web app for a class I got, is it possible to pull the code and run it in the browser through npm?

This project was designed to run locally since accessing local audio files is usually such an important part of music production. If you removed all references to core node packages such as fs, you could definitely run this in the web! If you attempted to do this, my biggest flag is that this project is 4 years old so getting might be a little tricky (e.g. all packages would be pretty old and attempting to update or install new packages might lead to unexpected issues).
If you're comfortable with npm/node/vue/etc. I'd say go for it! But if you're new to this tech stack, trying to run this in the web will likely be a major pain.


Provide basic mobile web support

Make sure each component is usable on mobile.

Made basic fixes to DrawComponent with https://github.com/Subtlemon/ChalkChain/pull/6
Need to deal with maximum image sizes and resizing for smaller screens.

Basic functionality is implemented. Closing this out in favour of more explicit issues like https://github.com/Subtlemon/ChalkChain/issues/11


Document Lab Service Menu

WIP.
Fixes #2603 and #2384

coverage: 94.317%. remained the same when pulling 2378f90baf8b56e0b99416e26ce223d777a6ebab on rahul-documentation-lab-service-menu into c132b0c465c1630a00fc64461186b9d3e98b10e0 on main.


month name not in user's locale

When executing:
./osxphotos export --directory '{created.year}/{created.mm}-{created.month}' DEST
the corresponding subfolders for the created month are created in English although it should be German in my case.
running locale in Terminal (zsh) returns:
LANG="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_CTYPE="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_ALL=

Thanks for the bug report!  I’m surprised by this because I’m using datetime’s strftime() whose documentation states it uses user’s locale. I’ll dig into the code and see what I can figure out! My intent was that those template substitutions all happen in the user’s locale.

OK, I did a quick experiment in the shell with python 3 (3.7.3).
import locale
locale.getlocale()

returns ('de_DE', 'UTF-8')
locale.getlocale(locale.LC_TIME)
returns (None, None)
import time
from datetime import date
today = date.today()
today.strftime("%A")

returns 'Sunday' <- not what I want
locale.setlocale(locale.LC_TIME, 'de_DE')
returns 'de_DE'
locale.getlocale()
returns ('de_DE', 'UTF-8')
locale.getlocale(locale.LC_TIME)
now returns (de_DE', 'ISO8859-1')
today.strftime("%A")
now returns 'Sonntag'

@britiscurious thanks -- that's helpful and I think I'm on the right path now.  Try your example above but execute this line first:
locale.setlocale(locale.LC_ALL,"")
I did some similar testing after seeing your examples, changing my locale to de_DE and got same results.  Not sure why, but I think the line above will get datetime to use the right locale as in example below:
[I] ➜ locale
LANG="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_CTYPE="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_ALL=

[I] ➜ python3
>>> import locale
>>> import datetime
>>> now = datetime.datetime.now()
>>> now.strftime("%A")
'Sunday'
>>> locale.setlocale(locale.LC_ALL,"")
'de_DE.UTF-8'
>>> now.strftime("%A")
'Sonntag'

[I] ➜ python3 -i examples/photos_repl.py
osxphotos version: 0.28.5
Using last opened Photos library: /Users/rhet/Pictures/Photos Library.photoslibrary
loading database
done: took 2.48562013 seconds
database version: 6000
getting photos
found 25964 photos in 2.3432144280000005 seconds
>>> from osxphotos.template import render_filepath_template
>>> import locale
>>> photos[0].date
datetime.datetime(2017, 1, 31, 16, 19, 19, 192088, tzinfo=datetime.timezone(datetime.timedelta(days=-1, seconds=57600)))
>>> render_filepath_template("{created.month}",photos[0])
(['January'], [])
>>> locale.setlocale(locale.LC_ALL,"")
'de_DE.UTF-8'
>>> render_filepath_template("{created.month}",photos[0])
(['Januar'], [])
>>>

Just wanted to confirm that
locale.setlocale(locale.LC_ALL,"")
does the trick here, too.

Excellent!  I think I've fixed this -- working on test cases now, will push update to github later today.
[I] ➜ locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
[I] ➜ python3 -m osxphotos export ~/Desktop/export --directory '{created.year}/{created.mm}-{created.month}' --uuid 9D0CE36F-831A-4F5D-83E0-A5473B45EB64 --verbose
Using last opened Photos library: /Users/rhet/Pictures/Photos Library.photoslibrary
Exporting 1 photo to /Users/rhet/Desktop/export...
Exporting 9D0CE36F-831A-4F5D-83E0-A5473B45EB64.jpeg as IMG_1321.JPG
Exported 9D0CE36F-831A-4F5D-83E0-A5473B45EB64.jpeg to ['/Users/rhet/Desktop/export/2020/03-March/IMG_1321.JPG']

[I] ➜ locale
LANG="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_CTYPE="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_ALL=
[I] ➜ python3 -m osxphotos export ~/Desktop/export --directory '{created.year}/{created.mm}-{created.month}' --uuid 9D0CE36F-831A-4F5D-83E0-A5473B45EB64 --verbose
Using last opened Photos library: /Users/rhet/Pictures/Photos Library.photoslibrary
Exporting 1 photo to /Users/rhet/Desktop/export...
Exporting 9D0CE36F-831A-4F5D-83E0-A5473B45EB64.jpeg as IMG_1321.JPG
Exported 9D0CE36F-831A-4F5D-83E0-A5473B45EB64.jpeg to ['/Users/rhet/Desktop/export/2020/03-März/IMG_1321.JPG']

Fixed in version 0.28.6


[New Port] Add Wren

http://wren.io Is a scripting language with small/no dependencies and already set up with CMake so hopefully should be straight forward

Hi @RichyHBM  thanks for posting this request and your PR.


In my app using this storage library.But files stored in seperate folder i am opening using intent view i am giving the file name its says file not found.I want like whatsapp global storage files images and all

In my app using this storage library.But files stored in seperate folder i am opening using intent view i am giving the file name its says file not found.I want like whatsapp global storage files images and all

Can you share your code with an error you get please?


CAD-4322 fix Db-analyser for UTxO-HD backends and add db-checker

Notes from brief review on-call:

Remove the parametricity on BlockComponent, always stream blocks, let the inner function extract whatever component.
Consider using IORef instead of MVar

Notes from brief review on-call:
* Remove the parametricity on `BlockComponent`, always stream blocks, let the inner function extract whatever component.

* Consider using `IORef` instead of `MVar`

Done


Fixed #31944 -- Used addCleanup() to register TestContextDecorator cleanups.

Cleanups from addCleanup() are scheduled to happen in reverse order to
the order they are added (LIFO). Ensures each cleanup is executed from
the innermost to the outermost.

@francoisfreitag Thanks :+1:
I pushed edits to release notes.

Thanks @felixxm, the new release note entry is clearer.


Support to build with Docker container

Support to build with Docker container

replace PR #9 Add a Dockerfile for project

Maybe add a readme what this is used by or what it is for?

thanks, so I can use this image to test code changes and/or build a binary that can be found at the path dist/zipkin-cpp-0.3.1-Linux-x86_64.tar.gz once the build is done. nice!

Sure, but it seems you need use git:develop branch instead of outdated 0.3.1

I will try this locally

wondering if the build also makes the examples? If so, it could be worth mentioning as people could try them (possibly by running the resulting container!)

slight glitch running locally as it fails a unit test
$ ./build-dist.sh git:develop
--snip--
QueueImpl.cpp:(.text._ZN7RdKafka9QueueImplD1Ev[_ZN7RdKafka9QueueImplD1Ev]+0x39): undefined reference to `rd_kafka_queue_destroy'
collect2: error: ld returned 1 exit status
make[2]: *** [test/unittest] Error 1
make[1]: *** [test/CMakeFiles/unittest.dir/all] Error 2
make: *** [all] Error 2
test/CMakeFiles/unittest.dir/build.make:190: recipe for target 'test/unittest' failed
CMakeFiles/Makefile2:1091: recipe for target 'test/CMakeFiles/unittest.dir/all' failed
Makefile:140: recipe for target 'all' failed

QueueImpl.cpp:(.text._ZN7RdKafka9QueueImplD1Ev[_ZN7RdKafka9QueueImplD1Ev]+0x39): undefined reference to `rd_kafka_queue_destroy'

Seems caused by missing librdkafka C library, it should be fixed in feature/docker-build branch
You may try to use the feature/docker-build branch
$ ./build-dist.sh git:feature/docker-build

In fact, the build script will map the dist folder to the container, you could check it for your package :)


Update README.md

Deleted fulfilled task (port scanner) from todo list

- [ ] something is a markdown syntax for a TODO. I think it's better to mark it as solved and not remove it. like so: - [x] something


Task: ASB-2254 - Content audit - Have your say guide page

Describe your changes
https://pins-ds.atlassian.net/browse/ASB-2254?atlOrigin=eyJpIjoiOTI2MDc2MDlkYjhmNGIwOGJiYjQxMGEwZjdjMmE2NTkiLCJwIjoiaiJ9
Type of change 🧩

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update
[ ] Other (please explain in the description section above)

Checklist before requesting a review

[x] I have performed a self-review of my own code
[x] I have double checked this work does not include any hardcoded secrets or passwords
[ ] I have made corresponding changes to the documentation
[ ] I have provided details on how I have tested my code
[x] I have referenced the ticket number above
[ ] I have provided a description of the ticket
[x] I have included unit tests to cover any testable code changes

:tada: This PR is included in version 1.8.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.18.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.23.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Support for aggregate function returning x most frequent values

Problem Statement
As a user I want to identify to most frequent values in a performant aggregation for a specified column. Approximations might be enough for large data sets.
e.g. to identify:

the most frequent product IDs in a real-time sales transaction table.
the most common error messages in a system log.

Possible Solutions
Implement something similar to:
TopK Aggregate function by ClickHouse
returns the approximately most frequent values in a column
using Finding top-k elements in data streams

Or something like approx_top_k
SELECT topK(3)(airline_id) FROM on_time

Considered Alternatives
If performance would not be an issue, a correlated subquery / JOIN could be used.  Alternatively even a UDF
UDF Example

UDF
select
country,
topk(array_agg(region),2)
from sys.summits
group by 1;

create or replace function topk(arr array(text), k int)
returns array(text)
language JAVASCRIPT
as
$$function topk(arr, k){
	const frequencyCount = {};
	for (let str of arr) {
		frequencyCount[str] = (frequencyCount[str] || 0) + 1;
	}
	const frequencyArray = Object.entries(frequencyCount);
	frequencyArray.sort((a, b) => b[1] - a[1]);
	return frequencyArray.slice(0, k).map(item => item[0]);
}$$

Another workaround:
WITH countries
AS (
	SELECT DISTINCT country
	FROM sys.summits
	)
SELECT country
	,array(	SELECT summits.region
			FROM sys.summits
			WHERE summits.country = countries.country
			GROUP BY summits.region
			ORDER BY count(*) DESC
			LIMIT 2)
FROM countries;

Or something like this?
select airline_id, count(*) from on_time group by 1 order by 2 desc limit 3;

topK(3)(airline_id) is probably not something we should do. We don't have functions as return types, but something like approx_top_k could work with our existing framework
Given that this is supposedly motivated by performance:

How many records are we talking about?
What's the cardinality on the columns like?
What's the current execution time using alternatives (like the group by)
What would be an acceptable execution time?

Hi, since we just had an issue where this feature would have been helpful - is this still being considered - is this something we can expect to hit the product anytime soon?
We would really appreciate this feature as it unlocks a bunch of new customer features that currently require a lot of support effort to solve.

is this still being considered - is this something we can expect to hit the product anytime soon?

I'd say some sort of solution for the top-k problem is definitely in scope for CrateDB.
It looks as if it is not making it into the 5.8 cycle where the current plan is to focus on disk space requirement reductions.
I've now bumped it up further for 5.9 so that it at least will pop up in discussions, but can't promise that it will stay there.

This would be an alternative to groupBy not to the aggregation function.
Because one use-case we just ran into is that we'd have to get the score based on the HLL aggregation.
I can share more details in slack - but just counting is not enough but rather we want to replace groupBy to be resilient to high cardinalities. (can be solved by eg. https://en.wikipedia.org/wiki/Count–min_sketch)

We recently added DataSketches as dependency, and further exploring how we could use the probabilistic data structures it includes is on our TODO (but it's a long one..)


Microsoft Avro library getting deprecated?

It looks like all code for Azure Service Management is getting deprecated in in favour of Azure Resource Management alternatives.
However, I haven't found any for the Avro library inside ASM group. Any plans to have something like that in ARM? What would be the state for Avro support in that case?
Thanks!

That's correct. The Avro SDK is no longer supported by Microsoft.


Reverse tag(s) mechanism

Should we add a reverse tag button for mods somewhere on mod dashboard/django admin, or should they just uncheck active checkbox on the tag to reverse it? Should we debate even deleting tags?

We're just going to let them uncheck the active checkbox on tags.


Spectrogram keeps adding new listeners for each loaded audio

Version: 2.1.3
Probably similar root cause as #1571, but I noticed that when listening to multiple  audio files (in series) with spectrogram enabled each load() took progressively longer.
You can see this in the javascript profiler in which I load a file, let it play, then load the next file. I did this 6 times while profiling and each load gets about .5 seconds longer than the previous one.

That's because render() gets registered within constructor() each time a new file is loaded, and there doesn't appear to be any cleanup of the previous file or event handlers, so each time the audio is loaded render() is called one additional time.
Note that I haven't isolated this into a test case, but I'm not doing anything too out of the ordinary.
Hit button multiple times.

I just noticed that the regions plugin is exhibiting a bug that's probably due to similar behavior when multiple audio files have been loaded.
Specifically: load file, load more files, create a single region. Looking at the HTML elements or wavesurfer.regions.list the regions are duplicated, one for each audio that had been loaded.

@jamesshannon i load many files and create many regions and i don't have any problems. have a look at your code and ensure you create valid and unique html for every wavesurfer instance

I only have one wavesurfer instance, and one single chunk of HTML.
As per #3 in my steps, I'm calling .empty() and .load() repeatedly to load successive files. I don't remember seeing anywhere in the documentation that I need to create a new instance everytime I load a file, but it seems that's probably the direction I need to go to ensure these bugs don't happen?

Sorry, i overread the empty() thing. It seems you must also call clearRegions(), empty does not change the regions list.

That doesn't do it, either. I only ever create a single region, and I do so on the, e.g., 10th file (not the first 9). And when I do that 10 regions are instantly created.
For good measure I've been using clearRegions(), but that doesn't affect the above.

i load many files and create many regions

that sounds unrelated @aburai, because @jamesshannon is not using the regions plugin.

https://jsbin.com/kizivenewa/edit?output

@jamesshannon that sample doesn't even use the spectrogram plugin..?

No. That's illustrating the half of this bug having to do with regions,
which I described above and I'm pretty confident has the same root problem.
As far as I could tell, there's no programmatic way to demonstrate how many
times the spectrogram gets created, and it'd be too complex to explain how
to use Dev tools.
On Sat, Mar 2, 2019, 08:32 Thijs Triemstra<EMAIL_ADDRESS>wrote:

@jamesshannon https://github.com/jamesshannon that sample doesn't even
use the spectrogram plugin..?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/katspaugh/wavesurfer.js/issues/1572#issuecomment-468936177,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAueJT3LkxeMVMUpulJ9N8XMtKIHwSD2ks5vSqergaJpZM4bOYDb
.

i think there must be removed some event listeners. you create 5 instances, create one region and get 5, one for every event listener

i think there must be removed some event listeners. you create 5 instances, create one region and get 5, one for every event listener

@jamesshannon can you try master branch, I fixed some of the event handling in the spectrogram plugin.

Is there an easy way to get a built file? unpkg doesn't have the dev versions?

Try https://github.com/katspaugh/wavesurfer.js#development

The PR might have solved the bug in destroying the spectogram plugin, but it doesn't seem to have done anything for the fact that spectogram is adding new listeners each time a file is loaded.
I assume that this is the same root cause as the bug in the regions plugin, which I demonstrated in the jsbin URL which I posted above. But I think I caused more confusion, so I split that into its own bug and created a test case for the spectogram bug. This test case demonstrates exactly what I showed in the first screenshot, however it doesn't do nearly as good of a job because it relies on the anecdotal timings rather than the fire stack trace flame graph.
https://jsbin.com/kubudom/edit?output
And the output I'm seeing:

Note how each successive load takes about 500ms longer than the previous one.

I think I figured this out locally.
enableDragSelection() creates an anonymous eventDown() function locally and then calls addEventListener() (https://github.com/katspaugh/wavesurfer.js/blob/master/src/plugin/regions.js#L754).
It seems that calling enableDragSelection() on each new file is necessary, so my assumption that this was like the regions bug and onReady() was getting called too many times is incorrect.
However, it looks like there might be an assumption that you can call addEventListener() multiple times without any adverse affect but that isn't true in this case.
My workaround fix was is to call wavesurfer.disableDragSelection(); before loading a new file.
I tried to make eventDown() a non-anonymous function but realized it was relying on _this8. So I think the long-term fix will be to unload eventDown() (and any other anonymous functions like onDown()), or to create actual functions out of them and use binding in addEventListener() which, now that I think about it, probably breaks the no-duplicates feature.

Thanks for the test case. I fixed it in the master branch, give it a try if you can.


Bhop Chance + Aimbot max Distance

Thats my first contact with c++ so it's probably not the cleanest code. But It works. Enjoy

It needs to be updated


Review PASS codebase for sensitive information in preparation for the codebase move

Look into places with potential secrets and credentials so we can figure out how to handle the secrets securely in the move.

Duplicate of #184


if the larger --update-freq  the better?

if the larger --update-freq the better?  I found that when I increase the --update-freq（12）,  the training is unstable, BLEU fluctuate widely（~0.6-1BLEU）

Increasing --update-freq increases the batch size by accumulating gradients from several mini-batches. Typically when training with larger batches it's important to retune the learning rate to achieve optimal performance. You might look at this paper for more analysis of this: https://arxiv.org/pdf/1806.00187.pdf. --update-freq corresponds to cumul in Table 1.

There are 2 cumuls . can you please elaborate the difference between these?
By 128 GPUs you mean 128 in number or 16 GPU with update-freq 8 to simulate training?

You need to increase the learning rate if you are going to increase the batchsize. 128 gpus is equivalent to 16 gpu with update freq 8, assuming your batchsize/num tokens stays the same. I'm closing this issue.


gpg-tui: 0.7.0 -> 0.7.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/orhun/gpg-tui/releases.
meta.description for gpg-tui is: "Terminal user interface for GnuPG"
meta.homepage for gpg-tui is: "https://github.com/orhun/gpg-tui"
meta.changelog for gpg-tui is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

Warning: no invocation of /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1/bin/completions had a zero exit code or showed the expected version

/nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1/bin/gpg-tui passed the binary check.

1 of 2 passed binary check by having a zero exit code.

1 of 2 passed binary check by having the new version present in output.

found 0.7.1 with grep in /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1

found 0.7.1 in filename of file in /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1

directory tree listing: https://gist.github.com/fd138e788ac5666c9cb0c430ac4fefcb

du listing: https://gist.github.com/cc410cfd17b335c5e1003f7bfc16b264

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
gpg-tui

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A gpg-tui https://github.com/r-ryantm/nixpkgs/archive/947d2aaeab252560fb792b96a20b2938741c34f5.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1
ls -la /nix/store/ifgjr289qd1aqnr83lbxvw5bylmqp7r6-gpg-tui-0.7.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

gpg-tui

Maintainer pings
cc @dotlambda for testing.

completions command was failing already


Useful Models To add to MLX Transformers

Creating this issue to keep track of Models that will be nice to have ported:
--> Fuyu : https://huggingface.co/adept/fuyu-8b
--> OpenELM
--> CLIP
--> Whisper
--> SeamlessMT: facebook/seamless-m4t-medium
--> TROCR: microsoft/trocr-large-handwritten
--> LLAVA
--> T5
--> Mistral

Fuyu: https://github.com/ToluClassics/mlx-transformers/pull/15

Man, I can't believe this wasn't done by the MLX team months ago! Thank you for this, should come in handy. I was going to suggest Mixtral as #1 but then I found this and screamed like a little girl
https://github.com/Goekdeniz-Guelmez/Mixtral-from-scratch-in-MLX
Seems pretty thorough -- sooo if ya see this...thanks @Goekdeniz!

I think Mixtral would be a useful addition for sure!

OpenELM: https://github.com/ToluClassics/mlx-transformers/pull/17


data/panel.html: Make warning status distinct

Add red background and an error icon
Fixes #40

@akshatnitd thanks for the PR, looks good to me

@akshatnitd Please add a screenshot everytime you make a UI change. Thanks for the PR. Thank @djmgit for approving. Also @akshatnitd thanks for getting commit grammer right 😄 .

@PaliwalSparsh


chore(main): release grades-view-solid 1.1.3

:robot: I have created a release beep boop
1.1.3 (2024-01-23)
Bug Fixes

Round on general knowledge branches (e084cd1)
Weights on general average (acaa7b1)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/jobtrek/grades-view-solid/releases/tag/grades-view-solid-v1.1.3 :sunflower:


Are mouse events working yet?

Is the MouseHover event working?
Thanks,
Karl

The Scintilla equivalent of MouseHover is DwellStart and DwellEnd.


Support non-application entity stats

Stats based on other entity kinds like capabilities
Pre computed stats, where pre-computed values are stored against org units/people

Need to handle rollups correctly in these cases
The stats should only appear on relevant entity pages

For pre-calculated stats, a new rollup kind can be used: PRECALCULATED
And these stats can simply be straight lookups when being rolled up (no actual rollup involved).
Eg: there would be a pre-calculated entry for each org-unit, so when viewing the stat for an org unit, the value(s) would simply be looked up from Entity_Statistic_Value table where Entity_Kind = 'ORG_UNIT' and Entity_Id = <current org unit id>