untyped transitions

@dcoutts I moved untyped transitions to typed-transisions and added a quantified constraint in asUntypedPeer and castTransition instead of a constraint in SomeMessage.  However, I am not sure if this really solves the problem or it just pushes is down to callees: I needed to add quantified constraints in Peer2, just using DeriveDataTypeable extension in ChainSync.Type does not seem enough.

I think this is not possilble right now.  I simplified this to (and also I tried to use DeriveDataTypeable):
{-# LANGUAGE QuantifiedConstraints #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE StandaloneDeriving #-}
module Main where

import Data.Proxy (Proxy (..))
import Data.Typeable (Typeable)
import Unsafe.Coerce (unsafeCoerce)

data X = A | B | C

deriving instance Typeable 'A
deriving instance Typeable 'B
deriving instance Typeable 'C

gn :: forall (x :: st). (forall (t :: st). Typeable t) => Proxy x -> ()
gn _ = ()

gnX :: (forall (t :: X). Typeable t) => Proxy 'A -> ()
gnX = gn

-- TYPE ERROR: No instance for (Typeable t) arising from a use of `gnX`
gnA :: Proxy 'A -> ()
gnA = gnX

main :: IO ()
main = undefined

Since this does not work, I need to remove MsgDone from ChainSync protocol.  Using quantified constraints here helped to solve Typeable constraint of MsgDone in a decodeChainSyncMessage: when packing inside SomeMessage which is hides the state transition we need to retain that the transition state is Typeable.  A workaround for this is to have a non polymorphic: here we are dealing with MsgDone :: ChainSync header point any StDone and we just have troubles to express that any satisified the Typeable constraint.

@coot I'm able to do this typeable safe-casting in Protocol.Channel.useChannel. I put the Typeable constraints in the Peer constructors. Could that not work for you?

@avieth I haven't tried and it might work, let me try.

@coot Did you take a look at the way I did it (aside: I've already done it, so why are we doing it again?). Protocol.Transition.castTransition uses only a Typeable on the from state:
Typeable from => Proxy from -> SomeTransition tr -> TransitionFrom tr from

useChannel takes a channel of SomeTransition tr, and is able to cast it via castTransition under the PeerAwait constructor, because that constructor has the Typeable constraint in it.

@avieth I know you did it and I am just trying to make @dcoutts parts to compile.  The problem here is not in the cast function, but decoding.  Both SomeTransition type and SomeMessage will have trouble with decoding a message that is polymorphic in the from state, like MsgDone :: ChainSyncMessage header point any StDone (the any :: ChainSyncState is a problem).  Another workaround would be to encode it differently dependently on any, then decoding should not be a problem (since ghc will know the from transition type and will be able to pick Typeable instance).

@avieth it's probably possible to use this approach I just don't see how to encode SomeMessage MsgDone depending on the type of MsgDone in an elegant way (non elegant way would be to use different messages so that non of them is polymorphic in a transition type).  I simplified this in #82 where only the client can end the protocol.


[feature] Support Live Activities on iOS

Not sure if it is within this project's scope, but being able to create Live Activities in React Native would be very cool 😎.
For example having a few configurable layouts, components and progress bars.

oh, interesting! This reminds me of foreground services on Android. Sadly, right now, it would be low on our Roadmap. Maybe in the future or if someone in the community gets to it first!


Task/11795/local cluster argo route

Related Issue: https://github.com/open-cluster-management/backlog/issues/11795
Get Argo route information for local-cluster apps when Search is unavailable

/retest


Cannot return element to parent

Cannot return a sole element to parent after dragging away from the parent list and over another list. The parent will not accept it, nor will it display a placeholder.

Same issue here


Cross-entropy does not get the right input dimensions

I am trying to train the DALLE model on the COCO dataset. The dataset setups are the same as https://github.com/lucidrains/DALLE-pytorch/issues/45. The setup for DALLE is like the follows:
import ...
from dalle.dalle_pytorch import DALLE
from transformers import BertTokenizer
import transformers

def train_dalle(epoch, model, loader, optimizer, tokenizer, device):
    model.train()

    for index, (x, y) in enumerate(loader):
        x = x.to(device)
        optimizer.zero_grad()

        tokenized = tokenizer(y, return_tensors='pt', padding=True)
        loss = model(
            tokenized['input_ids'].to(device),
            x,
            mask=tokenized['attention_mask'].bool().to(device),
            return_loss=True
        )
        loss.backward()
        optimizer.step()

        print(f'Epoch {epoch:2} [{index:4}/{len(loader):4}]: Loss: {loss:.4}')

DEVICE = 'cuda'
EPOCHS = 30

tokenizer = BertTokenizer.from_pretrained("bert-base-uncased")
dalle = DALLE(
    dim = 1024,
    vae = vae,                                 # automatically infer (1) image sequence length and (2) number of image tokens
    num_text_tokens = tokenizer.vocab_size,    # vocab size for text
    text_seq_len = 256,                        # text sequence length
    depth = 12,                                # should aim to be 64
    heads = 16,                                # attention heads
    dim_head = 64,                             # attention head dimension
    attn_dropout = 0.1,                        # attention dropout
    ff_dropout = 0.1                           # feedforward dropout
)

dalle.to(DEVICE)

optimizer = optim.Adam(dalle.parameters(), lr=0.001, weight_decay=0.0)
scheduler = torch.optim.lr_scheduler.ExponentialLR(optimizer, 0.98)

for epoch in range(1, EPOCHS+1):
    print(f'Epoch {epoch}/{EPOCHS}'.center(50, '='))
    print(f'Learning Rate: {optimizer.param_groups[0]["lr"]: .3}')
    train_dalle(epoch, dalle, train_loader, optimizer, tokenizer, DEVICE)
    scheduler.step()

But I got the error:
ValueError                                Traceback (most recent call last)
<ipython-input-8-f8cec408bdd6> in <module>
     27         print(f'Epoch {epoch}/{EPOCHS}'.center(50, '='))
     28         print(f'Learning Rate: {optimizer.param_groups[0]["lr"]: .3}')
---> 29         train_dalle(epoch, dalle, train_loader, optimizer, tokenizer, DEVICE)
     30         scheduler.step()
     31

<ipython-input-7-7b03345d1110> in train_dalle(epoch, model, loader, optimizer, tokenizer, device)
     11             x,
     12             mask=tokenized['attention_mask'].bool().to(device),
---> 13             return_loss=True
     14         )
     15         loss.backward()

~/miniconda3/envs/dalle/lib/python3.6/site-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
    725             result = self._slow_forward(*input, **kwargs)
    726         else:
--> 727             result = self.forward(*input, **kwargs)
    728         for hook in itertools.chain(
    729                 _global_forward_hooks.values(),

/usr/itetnas04/data-scratch-01/zaishi/data/AllModalities/notebooks/dalle/dalle_pytorch.py in forward(self, text, image, mask, return_loss)
    450         labels = torch.cat((text[:, 1:], offsetted_image), dim = 1)
    451
--> 452         loss = F.cross_entropy(rearrange(logits, 'b n c -> b c n'), labels)
    453         return loss

~/miniconda3/envs/dalle/lib/python3.6/site-packages/torch/nn/functional.py in cross_entropy(input, target, weight, size_average, ignore_index, reduce, reduction)
   2466     if size_average is not None or reduce is not None:
   2467         reduction = _Reduction.legacy_get_string(size_average, reduce)
-> 2468     return nll_loss(log_softmax(input, 1), target, weight, None, ignore_index, None, reduction)
   2469
   2470

~/miniconda3/envs/dalle/lib/python3.6/site-packages/torch/nn/functional.py in nll_loss(input, target, weight, size_average, ignore_index, reduce, reduction)
   2272         if target.size()[1:] != input.size()[2:]:
   2273             raise ValueError('Expected target size {}, got {}'.format(
-> 2274                 out_size, target.size()))
   2275         input = input.contiguous()
   2276         target = target.contiguous()

ValueError: Expected target size (8, 1042), got torch.Size([8, 1041])

I am not sure what is causing this error.

@FomalhautB Hi Zai! what is the size of your images? is your tokenized text padded and cut off at a length of 256?

@FomalhautB Hi Zai! what is the size of your images? is your tokenized text padded to a length of 256?

Oh, I didn't realize that I have to pad all the text to the text_seq_len. I will try it now.

@FomalhautB try upgrading to 0.1.12, I added a more descriptive error message! ok off to sleep, chat tomorrow!

Works fine now! Thank you @lucidrains, you are really amazing!


Need to remove ... from the 'See all addons...' and "Continue review...'

EPAM AI DIAL chat version
0.18.0
What happened?
Need to remove ... from the 'See all addons...' and 'Continue review...'

Be sure the check continue review for publications of chat/prompts/folders (available for Admin only)
Confidential information

[X] I confirm that do not share any confidential information

Verified on staging env successfully


hi fantastic program

any possibility we can do this for the ili9341
with thanks

The version that I just pushed uses the standard esphome::display namespace and should be portable to any display that is supported.


Extend browsers.list to support customized browser group mapping

Purpose: MicroMessenger is the browser name of WeChat, a very popular messaging/social network in China. It would be good to categorize browser MicroMessenger/VERSIONS (i.e. MicroMessenger/7.0.5(0x17000523) into a separated group named MicroMessenger (current under Other group).
However it could be argued that MicroMessenger is not actually a browser, but a webview component in iOS and other implementation in Android. So I think we could give user the choice that using the browsers.list to support customized browser group mapping.
[BROWSER_NAME]\t[CATEGORY]
MicroMessenger\t\t\t\tBrowsers

# OR

[BROWSER_NAME]\t[CATEGORY]\t[GROUP]
MicroMessenger\t\t\t\tBrowsers\tMicroMessenger

Thought?

Great point. As far as I recall, you should be able do the former, e.g.,
MicroMessenger > MicroMessenger/7.0.5(0x17000523)

In your browsers.list file, you could write it as
MicroMessenger\t\tMicroMessenger

I like the idea of having multiple levels or at least another level as you mentioned above, the question is how would it look like in the HTML/CLI output... thoughts?

Thanks. This works perfectly.
MicroMessenger\t\tMicroMessenger

Would be good to update the header of browsers.list to include it as example. It feels like the group option is limited to one of Crawlers, Browsers and Feeds currently.
Maybe we don't need another layer, if we could aggregate the BrowserX/[VersionY] format automatically into Other > BrowserX? After all specific version after splash is not very useful.
However if we do want to add another level, some ascii character └ can help. (I didn't come with a good solution for multiple levels.). Probably not that useful for browser panel, but could be useful for GEO panel to include City as another level (refs #1498 ).

Awesome. I've added an extra note to the browsers.list file. Let me know what you think. Or feel free also to submit a PR if you think I'm missing something.
Thanks for the suggestion about the ascii char, I can look into this if we decide to go for the additional level. Closing this, feel free to reopen it if needed.


removed duplicate import

Proposed changes:

Remove duplicate imports in shared/importers/importer.py
Resolves issue #7015

Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[x] updated the changelog (please check changelog for instructions)
[x] reformat files using black (please check Readme for instructions)

 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.

Thanks for submitting a pull request 🚀 @melindaloubser1 will take a look at it as soon as possible ✨

@melindaloubser1 updated the branch.


[FEATURE] Logfiles/Errors

I used the FTP Method to install, but I am stuck with
"Error
An error occured, please try later."
I can't seem to find any logfiles on any further information?

Hello, you can see PHP errors using that method in the README.md: https://github.com/blueprintue/blueprintue-self-hosted-edition?tab=readme-ov-file#how-to-show-php-errors

I see, adding either of those causes 500 error for me. Worked around it using:
$file = $rootDir . $ds . '500-' . gmdate("Y-m-d", time()) . '.txt';
$errorLog = gmdate("Y-m-d H:i:s", time()) . "\t";

if ($request !== null) {
    $errorLog .= $request->getMethod() . "\t" . $request->getUri();
} else {
    $errorLog .= "No request available";
}

$errorLog .= "\t" . $t->getMessage() . "\n";
@file_put_contents($file, $errorLog, FILE_APPEND);

Now i get:
2024-10-27 11:46:34	No request available	Rancoud\Environment\Environment::convertType(): Argument #1 ($value) must be of type string, float given, called in /var/www/virtual/mikrovr/blueprintsue/vendor/rancoud/environment/src/Environment.php on line 563

In index.phpat line 26 remove that: $env->override(Rancoud\Environment\Environment::GETENV_ALL);

That led me to a new Error, and now I'm at a loss
2024-10-27 12:04:31	GET	https://blueprints.virtuos.world/	Error Execute

Did you add a blueprint (you can see it in the database)? if yes I supposed it's because it missing the anonymous user.

Went with Docker Compose now, I think it was related to the shared hosting enviroment.


Child Items Not Collapsing

My team is using this library for handling collapsing and expanding items in a list but we noticed that the child items from the last parent item in a list will not collapse. Example:

Parent Item One

Child Item One
Child Item Two

Baby Item One
Baby Item Two
Baby Item Three

If I were expand "Child Item Two" to reveal the baby items and then collapse "Parent Item One" then "Child Item Two" will collapse however the Baby Items will not collapse, they remain open. This is only a problem if position based state management is set to false, however if it's set to true we lose the ability to manage the state of the child items when they collapse.
I was able to do a work around for this by extending from FastAdapter and copying the code from the collapse method (and other internal methods that it relies on) and updating the the first for loop within the else block to add one to the index. So essentially it looks something like this:
//first we find out how many items were added in total
//also counting subitems
int totalAddedItems = expandable.getSubItems().size();
for (int i = position + 1; i < position + totalAddedItems + 1; i++) { // +1 so we get the last item in the list
   Item tmp = getItem(i);
   if (tmp instanceof IExpandable) {
       IExpandable tmpExpandable = ((IExpandable) tmp);
       if (tmpExpandable.getSubItems() != null && tmpExpandable.isExpanded()) {
           totalAddedItems = totalAddedItems + tmpExpandable.getSubItems().size();
       }
   }
}

If you'd like I can take a look at the internals of the collapse method a little more closely sometime this week and see if I can resolve this bug in perhaps a less messy way than the above code snippet I'm using currently.

@CodyEngel thank you very much for the report.
Thanks for the very detailed report. I'll also have a look into this sometimes this or next week.
Something possibly interesting. The positionBasedStateManagement will be removed in v3, and there will only be the newer approach. (This allows me to remove code base related to the old original approach)
I am a little bit surprised that the issue only happens for the new approach.
I'll report back if I found something.

@mikepenz, thank you! Let me know if I can help out at all.

@CodyEngel the +1 fixed it :D
I have released v1.6.2 with that fix :) thanks you very much


updates to versions, docs, and license in READMEs

Main README referenced release 2.0 and pointed to 6.2 docs.
License update to 2021
READMEs in subdirectories pointed to README.md and LICENSE in master branch not main branch

@klc178 Could you please review all changes here for whether every change is suitable for you to base your doc update on or not. Can request to remove those changes conflicting with your work.

@klc178 Could you please review all changes here for whether every change is suitable for you to base your doc update on or not. Can request to remove those changes conflicting with your work.


[Feature-Request] Add SOT models: ATOM and Dimp18 to model zoo

Start with the why:
SOT (Single Object Tracking) is very helpful in many cases, e.g. a following bot, target tracking etc. The ATOM and DiMP-18 models are SOTA models which won competitions in ICCV 2019 and I have tested all 9 models in the model zoo of PyTracking and these 2 are relatively quickest and less demanding among other models.
Move to the what:
I would like Depth AI to add the ATOM and DiMP-18 to its model zoo and create a demo code for these 2 models.
Move to the how:
None.
I did notice that the demos from DepthAI have already have a few object tracking samples, however none of these sample code can perform what the ATOM and DiMP can do, e.g. you can select a particular area on a person(that's right, not necessary the entire body) e.g. left eye, right arm, nose, even a part of your belly, then the 2 models can perform incredible tracking accuracy.
I have found the 2 pre-trained models for your convenience:

ATOM
DiMP-18

Hopefully, some talented devs could help to add these 2 models into the DepthAI's ammunition :)

Thanks.  Tagging @tersekmatija in case he hasn't seen these already.

hi @ersekmatija , when you are migrating ATOM to the blob format, there are something to avoid, e.g. PrPool
Which is mentioned here

Hi @franva , thanks for sharing this! I agree that such tracking would be better and would have better accuracy than what we have currently available. I'll look into this, but as this will probably require some implementation of additional tracking logic (not just simple forwards through the NN), I am not sure how soon I'll be able to implement that due to some other projects that we have.
But this is definitely on my TODO list. Of course, you are welcome to help out through pull requests in case you manage to get this working before me :)


[fix][broker]Close publishLimiter when disable it

Motivation
Close topicPublishRateLimiter when it is disabled  to prevent resource leakages
Modifications
Close topicPublishRateLimiter when it change from enable to disable
Verifying this change

[x] Make sure that the change passes the CI checks.

[x] no-need-doc
(Please explain why)

/pulsarbot run-failure-checks

Hi @lhotari
#10384 has defined PublishRateLimiter to extend AutoCloseable with close signs exception, and cause to catch the exception when updated.  I think we should override the method in this interface to avoid throwing exceptions.

/pulsarbot run-failure-checks


Azayaka na Irodori no Naka de, Kimi Rashiku [PCSG01175]

App summary
App name: Azayaka na Irodori no Naka de, Kimi Rashiku
App serial: PCSG01175
App version: 1.00
Vita3K summary
Version: v0.1.8
Build number: 3216
CPU backend: Dynarmic
Test environment summary
Tested by: space1
OS: Windows 11
CPU: AMD Ryzen 5 3600
GPU: Nvidia 3070
RAM: 32 GB
Issues
Emulator crash in the intro.
Screenshots

Log
vita3k_save.log
Recommended labels
Intro

as of https://github.com/Vita3K/Vita3K/commit/6f39c3b1a761d3ff866b56ad6bb4f7a00d2a99df, the game is now playable.
Screenshots

Log
vita3k.zip
Recommended Labels

Playable

until now (commits: https://github.com/Vita3K/Vita3K/commit/bef1567a61a0ac4467ad88e4e13c41fec54a07cb)
game still stuck at intro (while android v9 goes nothing)

shaders pipeline never saved in this game (always recompiled every boot)
vita3k-log.zip


Eventloop design and scheduler

Eventloop and scheduler should at least support the following usage
spawn(|| {

    let mut acceptor = TcpStream::connect("<IP_ADDRESS>:8000");

    for client in acceptor.incoming() {
        // Spawns a new coroutine to handle it
        spawn(move|| {
            for line in client.lines() {
                match line {
                    Ok(line) => client.write_all(&line[..].as_bytes()).unwrap();
                    Err(..) => break,
                }
            }
        });
    }

    println!("Server closed");

});

TcpStream here should not be the one that inside std::io.

The eventloop could be an coroutine.
spawn(|| {

    // IoObject has a Buffer pointer inside
    let mut waiting_coroutines = HashMap<Fd, (IoObject, Handle)>;
    let mut event_loop = ...;

    loop {
        // The eventloop could get messages from other coroutines via channel
        while let Ok(msg) = rx.try_recv() {
            // gets some message from other coroutine

            match msg {

                IoRequest::Read(obj, coro_handle) => {
                    // Record the handle of coroutine
                    let fd = obj.fd();

                    waiting_coroutines.insert(fd, (obj, coro_handle));

                    // Register in the eventloop
                    event_loop.register(fd, ListeningEvent::Read);
                },

                IoRequest::Write(obj, coro_handle) => {
                    // Record the handle of coroutine
                    let fd = obj.fd();

                    waiting_coroutines.insert(fd, (obj, coro_handle));

                    // Register in the eventloop
                    event_loop.register(fd, ListeningEvent::Write);
                }
            }
        }

        // Lets see if there is any I/O event with timeout

        let event_loop_result = event_loop.run_timeout(|ev, the_loop| {
            // An I/O event comes

            match ev {
                Event::Read(fd, data) => {
                    let (obj, coro) = waiting_coroutines.find(fd).unwrap();
                    fd.read(&mut obj.buffer);

                    Scheduler::resume(coro);
                },
                Event::Write(fd) => {
                    let (obj, coro) = waiting_coroutines.find(fd).unwrap();
                    fd.write(&mut obj.buffer);

                    Scheduler::resume(coro);
                }
            }
        });

        match event_loop_result {
            Ok(..) => {
                // Yield here. Let other coroutine runs
                Scheduler::sched();
            },
            Err(err) => {
                panic!(err);
            }
        }
    }

});

The Scheduler should provide a function to get a Sender of one of the running eventloops. And read function of a TcpStream may be implement like this:
fn read(&mut self, buffer: &mut [u8]) -> Result<usize> {

    let tx = Scheduler::handler_of_eventloop();

    let (iotx, iorx) = channel();
    let obj = IoObject::new(self.fd, iotx, buffer);

    // A handle of current running coroutine
    let coro = Scheduler::current();

    tx.send(IoRequest::Read(obj, coro)).unwrap();

    Scheduler::sched();

    iorx.recv().unwrap();
}

When the eventloop coroutine yield back (Scheduler should know about it), the handle of that coroutine should be put into the ready queue of Scheduler. Which means that another native thread may pick it up and wake the loop up.
One way to implement this is when Scheduler::sched was called, scheduler may check the field of current running coroutine. If Scheduler::current was called before, then the Scheduler will not owns the coroutine, otherwise, the Scheduler still owns the coroutine. If Scheduler does not owns the coroutine, it will not put it into the ready queue immediately so that a manually call of Scheduler::resume is required.
No matter the Scheduler owns the current running coroutine or not, it should always knows who is the parent of the current running coroutine. One possible way to implement this is every time Scheduler::resume was called, it will take ownership of the parent from the Coroutine.


Remove gulp from being installed by default for new components

fixes #40
Welcome to discuss if you disagree

@behaghel @rosswarren
do you guys agree with this? It would be good to get this in v1.1.0 as it could also be seen as a breaking change.
upside
it would speed up the initial setup of components.  promote the use of the helper via CLI. less code to test.
downside
if the helper has a breaking change, all your projects would have to update the component.config.js file.

I have reviewed it and I like it. I think it lowers the barriers to entry significantly. I didn't even see the downside, can you elaborate on it? Should we start having a component.config.js definition version or even put in there the semantic version of the component-helper it works well with? That would work as a form of acknowledgment by the component, pointing out it has adjusted to the breaking changes of the new version.
You have a typo in the directory examples (currently reads exmaples).

by the downside, i mean, with v1.1.0 proposal we have changed the format of what the helper expects to find within component.config.js. This means when people upgrade the helper but run component serve on a project built with v1.0.0, nothing will happen apart from errors.
ok, on the other branch i will work out how to notify if they have an out of date config file form.

I think having to update your config is really minimal. It will take me 2 minutes for sky-tags. Now I hear you, either we describe clearly the needed transformation or better, we script it.
—
Sent from Mailbox
On Mon, Mar 2, 2015 at 4:18 PM, Peter Mouland<EMAIL_ADDRESS>wrote:

by the downside, i mean, with v1.1.0 proposal we have changed the format of what the helper expects to find within component.config.js. This means when people upgrade the helper but run component serve on a project built with v1.0.0, nothing will happen apart from errors.
ok, on the other branch i will work out how to notify if they have an out of date config file form.
Reply to this email directly or view it on GitHub:
https://github.com/skyglobal/component-helper/pull/55#issuecomment-76742146

cool.
I have started work on the config notifying method - but dont think what i have right now is good enough. or easy to understand!
https://github.com/peter-mouland/component-helper/commit/10e75a6996ec1ecdbb83217963848c5fe8472f32
i think this gulp refactor is ready to merge then and the config notifier is a separate issue


Discogapic: Add fieldmasks to generated flattened methods.

Add fieldmasks to generated flattened methods.
Resolves https://github.com/googleapis/gapic-generator/issues/2096.

Codecov Report

Merging #2109 into master will increase coverage by 0.08%.
The diff coverage is 76.27%.

@@             Coverage Diff              @@
##             master    #2109      +/-   ##
============================================
+ Coverage     86.77%   86.86%   +0.08%
- Complexity     5001     5016      +15
============================================
  Files           450      450
  Lines         19836    19828       -8
  Branches       2095     2108      +13
============================================
+ Hits          17213    17223      +10
+ Misses         1904     1877      -27
- Partials        719      728       +9

Impacted Files
Coverage Δ
Complexity Δ

...m/google/api/codegen/transformer/SurfaceNamer.java
75.43% <ø> (+0.18%)
202 <0> (ø)
:arrow_down:

...om/google/api/codegen/config/FlatteningConfig.java
67.92% <100%> (+1.92%)
10 <0> (+1)
:arrow_up:

...oogle/api/codegen/config/DiscoveryMethodModel.java
84.25% <100%> (+2.15%)
49 <4> (+9)
:arrow_up:

...i/codegen/transformer/SchemaTypeNameConverter.java
70.58% <100%> (+3.92%)
6 <0> (+1)
:arrow_up:

...r/java/JavaDiscoGapicRequestToViewTransformer.java
95.65% <100%> (+0.57%)
20 <0> (-1)
:arrow_down:

...gle/api/codegen/config/DiscoGapicMethodConfig.java
48.14% <100%> (+1.31%)
6 <0> (+1)
:arrow_up:

...om/google/api/codegen/config/ProtoMethodModel.java
88.4% <100%> (+0.17%)
35 <1> (+1)
:arrow_up:

...api/codegen/discovery/StandardSchemaGenerator.java
16.66% <16.66%> (ø)
2 <2> (?)

...le/api/codegen/configgen/mergers/MethodMerger.java
97.82% <50%> (-2.18%)
21 <0> (ø)

.../com/google/api/codegen/config/DiscoveryField.java
52.7% <60%> (-1.1%)
60 <6> (+2)

... and 9 more

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 ce34113...569c51d. Read the comment docs.

Addressed comments.
PTAL

Addressed comments. PTAL

PTAL


Security Checklist for Applications from a developer perespective

We already have a checklist for admins. In this task we would like to create one that focusses on the applications and developers.
cc: @AnshumanTripathi

/assign

This checklist should include RBAC best practices for patching permissions - https://github.com/kubernetes/website/pull/45664.
More details about how namespace labelling can be exploited - https://github.com/smarticu5/kubernetes_manifests/tree/main/pocs/namespace-labelling

Collaborate here - https://hackmd.io/@anshumantripathi/rktQIDazR

/remove-lifecycle rotten
/remove-lifecycle stale

merged - https://github.com/kubernetes/website/pull/46326


Project currently using old versions of Next/React.js

"dependencies": {
  "bootstrap": "^5.1.3",
  "next": "^12.3.4",
  "react": "17.0.2",
  "react-bootstrap": "^2.2.2",
  "react-dom": "17.0.2",
  "react-icons": "^4.3.1"
},

Bootstrap > 5.1.3 (already updated to latest)
Next.JS > 13.5 latest (currently 12.3.4)
React > 18.2.0 is latest (currently (17.0.2)

Update: was able to successfully able to transplant newer versions of both React.js and Next.js.
The node app-related details implements the introduction of Tailwind CSS as well.

this is process is complete, however with breaking changes. this  will be made into a dedicated branch to transition gracefully from Bootstrap to Tailwind CSS.

With a completely new front-end structure, the transition is complete.


Turbine doesn't have a spinning down animation

This is a minor thing, but when I shut off the turbine, it dosn't have a spinning down animation. I am using both Ludicrite and Resonant Ender blocks. This is a minor aesthetic thing, but it is kind of bugging me.

That's because I used the simplest possible test when decided to enable/disable the TESR: "is the turbine active?" I suppose I could burn some client-side cycles monitoring the turbine's velocity and only swapping back to the non-TESR codepath when the velocity nears zero.

It's ok, you dont have to work on it. Your mod is great for generating unreasonably large amounts of power, so I can forgive it if the turbine doesn't spin.


Update linux.rb

Fixes #355, but requires #313.

Hi @paulcalabro !
I had the same issue and applying the change you've made, the execution works correctly.
Kr,
Rshad

See latest comments in issue #355. It appears PR #369 should have resolved this issue.

Closing this PR due to inactivity.  Please reopen a new pull request if this feature is still needed. Thanks!


UDFResult.get: Set task_id on ApiException

While trying to use the new tiledb.cloud.retry_task I found that when a task fails its task_id is not available in the returned UDFResult instance, although it is available in the response headers. This PR sets the task_id in case of ApiException.

@Shelnutt2 done, also cleaned up a bit the inconsistent/wrong usage usage of last_udf_task_id and last_sql_task_id.

@Shelnutt2 done, also cleaned up a bit the inconsistent/wrong usage usage of last_udf_task_id and last_sql_task_id.

 Related exception:

Traceback (most recent call last):
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/array.py", line 28, in get
    response = rest.RESTResponse(self.response.get(timeout=timeout))
  File "/home/gsk/projects/miniconda/envs/pdal/lib/python3.7/multiprocessing/pool.py", line 657, in get
    raise self._value
  File "/home/gsk/projects/miniconda/envs/pdal/lib/python3.7/multiprocessing/pool.py", line 121, in worker
    result = (True, func(*args, **kwds))
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/rest_api/api_client.py", line 208, in __call_api
    raise e
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/rest_api/api_client.py", line 204, in __call_api
    _request_timeout=_request_timeout,
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/rest_api/api_client.py", line 481, in request
    body=body,
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/rest_api/rest.py", line 343, in POST
    body=body,
  File "/home/gsk/projects/TileDB-Cloud-Py/tiledb/cloud/rest_api/rest.py", line 247, in request
    raise ApiException(http_resp=r)
tiledb.cloud.rest_api.exceptions.ApiException: (502)
Reason: Bad Gateway
HTTP response headers: HTTPHeaderDict({'Server': 'nginx/1.17.10', 'Date': 'Mon, 01 Feb 2021 16:56:05 GMT', 'Content-Type': 'text/html', 'Content-Length': '158', 'Connection': 'keep-alive', 'Strict-Transport-Security': 'max-age=15724800; includeSubDomains'})
HTTP response body:
<title>502 Bad Gateway</title>

502 Bad Gateway

nginx/1.17.10

Is this something that can/will be addressed or we're out of luck in such cases?

Update: I squashed the commits and now it fails only for linux_py37 for a different reason:
==================================== ERRORS ====================================
_____________________ ERROR collecting tests/test_basic.py _____________________
/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/tiledb/__init__.py:31: in <module>
    from .libtiledb import Ctx
tiledb/libtiledb.pyx:1: in init tiledb.libtiledb
    ???
E   ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 88 from C header, got 80 from PyObject

During handling of the above exception, another exception occurred:
/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/tiledb/__init__.py:35: in <module>
    ctypes.CDLL(os.path.join(lib_dir, lib_name))
/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/ctypes/__init__.py:364: in __init__
    self._handle = _dlopen(self._name, mode)
E   OSError: /opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/tiledb/native/libtiledb.so: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:
tests/test_basic.py:1: in <module>
    import tiledb, tiledb.cloud
/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/tiledb/__init__.py:38: in <module>
    ctypes.CDLL(lib_name)
/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/ctypes/__init__.py:364: in __init__
    self._handle = _dlopen(self._name, mode)
E   OSError: libtiledb.so: cannot open shared object file: No such file or directory

I believe that issue should be fixed in TileDB-Py 0.8.2 (just released, should be pulled if you re-run).


How can a clone, copy or avatar be dragged instead of the original element?

I'd like to be able to "drag" a single element multiple times. So instead of dragging the element, I'd like to drag its copy, clone or avatar. How can I use draggabilly in that scenario? Can I fire some events on the clone that will initiate the drag once the original has been cloned into the DOM?

Hmm maybe. Draggabilly does not support cloning. Rather than trying to shoe-horn it in with Draggabilly, you may want to look at jQuery UI Draggable or Dragula which support cloning.


Cart Hookup & Cleanup Epic

Cart Cleanup

feat: Checkout summary (#208) (https://github.com/reactioncommerce/reaction/issues/4478)
feat: Create an "Empty Cart" message component (#207)
feat: Cart and mini-summary (#209)
feat: Add cart.totalItemQuantity to the GraphQL API (https://github.com/reactioncommerce/reaction/issues/4527)

bug: Cart drawer onClick bug (#202)
bug: MiniCart QuantityInput hookup (#211)
bug: GQL error accessing totalCount in CartItemConnection (https://github.com/reactioncommerce/reaction/issues/4526)

refactor: Quantity input. Verify if its working production / remove dependency on MUI if it doesn't (https://github.com/reactioncommerce/reaction-component-library/issues/158)

Closing this epic and continuing on with cart tickets in the new epic for 2.0 here: https://github.com/reactioncommerce/reaction-next-starterkit/issues/259


Remove createAsyncMiddleware

This PR removes createAsyncMiddleware, and adds error handling for async middleware functions. The readme has been updated.
Previously, we did not handle rejections of plain, async middleware functions. createAsyncMiddleware existed in part to solve this problem. This PR introduces a simple refactor of _runMiddleware to handle rejections by async middleware functions.
It accomplishes this using a deferred promise, which was one of the techniques used to implement createAsyncMiddleware.

hmm, i actually dont like this.
the callback api and async api are different and shouldnt be mixed
better to add a engine.addAsyncMiddleware or just mandate that all middleware is async

create async middleware currently allows you to await next() and does not have an end fn. the end is implied when the async middleware completes without calling next

the callback api and async api are different and shouldnt be mixed

@kumavis this is working up to resolving that problem. In #83 (dependency: #81 (this) -> #82 -> #83) I remove next callbacks completely in favor of a (req, res, end) signature where middleware can either be sync or async.

The main reason for removing next is that the async middleware pattern of await next(); /* do stuff */; return; invariably violates the node/callback-return ESLint rule. I agree with the authors of that rule that not returning the callback is an anti-pattern.
I decided to keep end in #83 because it seemed more explicit to call a function to end the processing of a request. That was purely an editorial decision, however, and we could instead decide to end the request whenever response.result or response.error are set, or when an error is thrown in a middleware.

This library has now been migrated into the core monorepo. This PR has been locked and this repo will be archived shortly. Going forward, releases of this library will only include changes made in the core repo.

Please push this branch to core and open a new PR there.
Optionally, add a link pointing to the discussion in this PR to provide context.


s3_auth: accept longer config lines

Allow arbitrarily long config lines in s3_auth config files.  Previously the limit was 511 characters.

AWS documentation specifies that

The size of the security token that AWS STS API operations return is not fixed. We strongly recommend that you make no assumptions about the maximum size.

Add autest for config parsing.

[approve ci autest]

Setting for 9.2.x per @moonchen 's request. The change should be pretty safe and he added quite a bit of testing for the parts he changed. And it sounds like Apple will be running with this internally as well so if there are issues they'll most likely find it there.

Cherry-picked to v9.2.x


Add taxon_reference.topic field

references linked to a taxon should optionally be classified according to some enum.
ACEF has this in the reference links table.
proposal:

create ReferenceTopic enum
add array field topic to table taxon_reference
create TaxonReference class which takes a referenceKey and list of ReferenceTopic
change TaxonInfo.references to be a list of TaxonReference instances
add createTaxonReference method to ReferenceMapper that takes taxonKey and a TaxonReference

Alternatively consider to avoid a new TaxonReference class, populate the table with createTaxonReference(taxKey, refKey, enum[] topics) and expose the data in TaxonInfo as Map<Integer, Topic[]>

As discussed, the ACEF ReferenceType field really is just there to differentiate between types of references that we already distinguish within our data model: references about a taxon, references about a vernacular name, etc. We should generate that field from the assembly db and the import procedure should pick it up to decide which JOIN table to populate.

Covered by #62


Adding my personal website to the users list

Thanks for using Congo, @Jh123x! I'll merge this in and the public list will update when the next theme release is published.


Add present handler only if VkPresentTimesInfoGOOGLE struct available in VkPresentInfoKHR

This PR solves issue #2284.
A presentation handler only needs to be activated if the VK_GOOGLE_display_timing extension is enabled and the VkPresentTimesInfoGOOGLE struct is included in the pNext chain of the VkPresentInfoKHR struct during calls to vkQueuePresentKHR().  Previously the presentation handler would always be added.  This could lead to system-level diagnostic messages when used with SDL_PollEvent() as described in the issue noted above.
This change also permits presentInfo.actualPresentTime info to be recorded whether VkPresentTimeGOOGLE* pPresentTimes is defined or not.  This more closely follows the Vulkan spec which permits pPresentTimes = NULL.
I have tested this change against my Optick profiler integration with RBDoom3-BFG and correct actualPresentTime and presentID information is returned.  No regressions observed running on macOS Ventura 13.6.6 on x86_64.

This PR solves issue #2284.

While the changes in this PR might be useful, and be pulled in, how does this PR fix #2284?
The changes in this PR would seem to mask the issue for the specific use case in  #2284, but still leave the problem of the Uncaught selector unresolved for anyone who is using VK_GOOGLE_display_timing.
I'm going to hold off pulling this in until we make some further progress on figuring out #2284.

Before you provide final reviews and possibly merge, I would like to raise a point re interpretation of the Vulkan Spec, and encourage "sober second thought".
In MVK 1.2.5 and earlier, the presentation handler was guarded by a condition.  I think this was changed in MVK 1.2.6 based on discussion (with me) in https://github.com/KhronosGroup/MoltenVK/issues/1925#issuecomment-1571317425.  The end result was that calls to vkGetPastPresentationTimingGOOGLE() did not require the VkPresentTimesInfoGOOGLE struct in the pNext chain during calls to vkQueuePresentKHR() for valid data to be returned.  Note the Vulkan spec does not specifically say this is necessary for simply getting past presentation data.  I guess that's why we enabled it all the time.
However, given the more recent discussion this PR now reinstates a guard, but one that is more general and simply looks for the presence of VkPresentTimesInfoGOOGLE (and not does require VkPresentTimeGOOGLE* to be specified).  This means that vkGetPastPresentationTimingGOOGLE() will now require inclusion of VkPresentTimesInfoGOOGLE in calls to vkQueuePresentKHR() for past presentation data to be collected and available for return.
I am comfortable with this change for a couple of reasons:

Performance and footprint: Why collect the information all the time if an application will never use it.  Activating it only when the app really needs it (by including VkPresentTimesInfoGOOGLE in vkQueuePresentKHR() calls) seems more logical to me.  However, this is potentially a Vulkan Spec issue, and I would not want CTS tests to fail because of it.
If there really is a bug in Apple's instrumentation logic with CaptureMTLDrawable, then why bother everyone with a superfluous error message by default?  A guard here may help reduce distracting issues caused by a bug coupled with Xcode defaults for debug instrumentation.

This means that once again vkGetPastPresentationTimingGOOGLE() will require inclusion of VkPresentTimesInfoGOOGLE in calls to vkQueuePresentKHR() for past presentation data to be collected and available for return.

If I understand your concern, with VK_GOOGLE_display_timing enabled, requiring VkPresentTimesInfoGOOGLE to be present might miss some history timestamps on any presentations where VkPresentTimesInfoGOOGLE is not provided?
In that case, what about basing the guard on whether the extension is enabled instead?
if (getEnabledExtensions().vk_GOOGLE_display_timing.enabled) {
    addPresentedHandler(mtlDrwbl, presentInfo, signaler);
}

Or perhaps move it inside addPresentedHandler() and exit the function immediately if the extension is not enabled:
void MVKPresentableSwapchainImage::addPresentedHandler(id<CAMetalDrawable> mtlDrawable,
													   MVKImagePresentInfo presentInfo,
													   MVKSwapchainSignaler signaler) {
	if ( !getEnabledExtensions().vk_GOOGLE_display_timing.enabled ) { return; }

	beginPresentation(presentInfo);
	...

In that case, what about basing the guard on whether the extension is enabled instead?
if (getEnabledExtensions().vk_GOOGLE_display_timing.enabled) {
    addPresentedHandler(mtlDrwbl, presentInfo, signaler);
}

I like this option the best, since it makes it clear that the handler is activated only when the extension is enabled.  I will push this change tomorrow after a bit of testing.
I have also prototyped a minor enhancement to calculate the VkPastPresentationTimingGOOGLE ::presentMargin field which up to now has been blank.  I will include that too for your review.


Color picker don't work with graphic tablet

when using the powertoys color picker with the graphic tablet it does not move to where I want to do the picker, however, only with the mouse it moves and of course, with the laptop mouse pad

Thanks for reporting the issue.. with graphic tablet you mean something like a Wacom tablet using a stylus, right?

with graphic tablet you mean something like a Wacom tablet using a stylus, right?

That's not a truly open question. Maybe it's just a tablet computer? Definitely need more info though, @sublimejuan .

@sublimejuan, is this via pen interaction?
Actually wonder if this would work via touch.  I know i've only tried via mouse/trackpad


Better build/deploy process

Not quite happy with the somewhat hacky build+deploy workflow. Improvement suggestions?

This is no longer relevant.


Allow specifying selected model when calling WithReference with a Ollama resource

Related to an existing integration?
Yes
Existing integration
Aspire.CommunityToolkit.Hosting.Ollama
Overview
Allow specifying selected model when using WithReference with a Ollama resource.
Currently the selected model can only be easily set by using WithDefaultModel, but that locks to only one model and can't reference different ones in different resources easily. This can easily be solved by having an optional parameter on the custom WithReference for Ollama which allows specifying a selected model. If this optional parameter is not set, it will behave exactly the same as before: It would use the one specivied with WithDefaultModel on the Ollama resource.
+ public static IResourceBuilder<T> WithReference<T>(this IResourceBuilder<T> builder, IResourceBuilder<OllamaResource> ollama, string? selectedModel = null ) where T : IResourceWithEnvironment
- public static IResourceBuilder<T> WithReference<T>(this IResourceBuilder<T> builder, IResourceBuilder<OllamaResource> ollama) where T : IResourceWithEnvironment

Usage example
var ollama = builder.AddOllama("ollama", port: null)
    .AddModel("phi")
    .AddModel("phi3")
    .WithDefaultModel("phi")
    .WithOpenWebUI();

builder.AddProject<Projects.Aspire_CommunityToolkit_Hosting_Ollama_Web>("webfrontend")
    .WithExternalHttpEndpoints()
    .WithReference(ollama, /* adding this */ "phi3");

Breaking change?
No
there is no release yet (also this only adds an optional parameter to an existing method)
Alternatives
Setting the environment variable (Aspire__OllamaSharp__{resource.Name}__SelectedModel) manually, but that is not easily discoverable without looking at this source code. Maybe the way currently in the playground was added with the intention to do this, but it does not work:
builder.AddProject<Projects.Aspire_CommunityToolkit_Hosting_Ollama_Web>("webfrontend")
    .WithExternalHttpEndpoints()
    .WithReference(ollama)
    .WithEnvironment("ollama:model", "phi3");

Additional context
No response
Help us help you
Yes, I'd like to be assigned to work on this item

Thinking about this, and also the stuff in #107 there's probably a bit of overhaul that should be done to this integration and how it works in the Aspire app model.
From an API design the WithReference requiring a second argument doesn't really align with Aspire, what would be more aligned with the design would be for the AddModel to return an OllamaModelResource so you could write something like this:
var ollama = builder.AddOllama("ollama");

var phi3 = ollama.AddModel("phi3"); // model name is inferred from resource name
var nomic = ollama.AddModel("embedding", "nomic-embed-text"); // model name is explicit

builder.AddProject<Projects.Api>("api")
  .WithReference(phi3)
  .WithReference(nomic);

Then in your client you would use builder.AddOllamaClientApi("phi3"); or builder.AddOllamaClientApi("embedding"); and that would resolve a different selected/default model.
What's your thoughts on that @Mrxx99?

Agree that makes more sense and would also match how it works for databases. Will start working on this


nixos/dnscrypt-proxy2: harden and improve service

Motivation for this change
A lot of this is just culted from arch linux's service definition.
The one thing that's unique outside of this is the restartTriggers (I think they're needed?)
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

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

It's also important that this just goes for network-online.target and not network.target https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/

@ofborg test dnscrypt-proxy2


Passing weaver flags

Currently plugin only passes peers and any other flags are treated as unrecognised. One good example of flag that someone is quite likely to use is -initpeercount N.

Here it would be nice to have proper unix-y behaviour from the flag parser; i.e., to be able to partition arguments for the weave container with a --.

After #13, you can pass these as $WEAVE_ARGS, or ignore the script and start weave and the plugin with your own command lines.


Steps are out of date

The steps for registering the web app and creating the policies are outdated as they do not match the forms on the Azure Portal.

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

ID: fcf76a42-4ecb-63c9-8ca0-40af417006d7
Version Independent ID: 34c4f58e-a6a9-ab8c-0721-c4b8c5e0248b
Content: Tutorial - Enable a web application to authenticate with accounts using Azure Active Directory B2C
Content Source: articles/active-directory-b2c/active-directory-b2c-tutorials-web-app.md
Service: active-directory
GitHub Login: @davidmu1
Microsoft Alias: davidmu

@JasonGT Please note that I am able to correlate the steps mentioned in the document with Azure Portal. Request you please help with specific step which you find out of date so that I could help around it.

@MohitGargMSFT take a look at the create policies section (https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-tutorials-web-app#create-policies).
The guidance refers to selecting "Sign-up or sign-in policies" from the Azure AD B2C portal. This link no longer exists, it is now "User flows".
Clicking "User flows", there is no "Add" button. It is now "New user flow".
The step to select the relevant flow is missing, e.g. "Sign up and sign in"
The form to create a user flow is different to the old form.

User attributes and claims will need to be updated.
This should get you started, there is much more.

@JasonGT I got your point here. The existing Azure AD B2C tenant will see the experience as per the document. However, any new Azure AD B2C tenant created will have options as explained by you. I am assigning this feedback to content author to address this issue.


Ambiguous output between online and local compiler

Context: https://tour.golang.org/moretypes/15
According to the documentation of slices in Golang, whenever the length and capacity of a slice is same and a new append function is made on it, The capacity defaultly increases. And the code from the tutorial is showing two different outputs when executed online vs executed locally.
Tutorial output:

Compiler Output when executed locally

This is working as intended. The specification does not say how much the slice should grow. The current implementation handles growing in different ways between 32 and 64 bit architectures. The tour runs on a 32bit platform, your machine is likely 64bit. Closing here.


Support type-only TypedDocumentNode declarations

Currently, given a query like this—
query findUser($userId: ID!) {
    user(id: $userId) {
        id
        username
        role
    }
}

—the generator creates this output (assuming typescript-operations and near-operation-file as well for convenience):
import * as Types from './types';

import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
export type FindUserQueryVariables = Types.Exact<{
  userId: Types.Scalars['ID'];
}>;

export type FindUserQuery = { __typename?: 'Query', user?: Types.Maybe<{ __typename?: 'User', id: string, username: string, role: Types.Role }> };

export const FindUserDocument: DocumentNode<FindUserQuery, FindUserQueryVariables> = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"findUser"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"userId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"userId"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"username"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"role"},"arguments":[],"directives":[]}]}}]}}]};

For many purposes, however, there's zero value in the actual TS output, only a type definition, and we in fact want to generate only a .d.ts file, which should look something like this:
import * as Types from './types';

import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core';
export type FindUserQueryVariables = Types.Exact<{
  userId: Types.Scalars['ID'];
}>;

export type FindUserQuery = { __typename?: 'Query', user?: Types.Maybe<{ __typename?: 'User', id: string, username: string, role: Types.Role }> };

export const FindUserDocument: DocumentNode<FindUserQuery, FindUserQueryVariables>;

Just chiming in to express my interest in this feature. It would enable me to add TypedDocumentNode support to apollo elements
// import { HelloQueryData, HelloQueryVariables } from '#schema'; // old style codegen
import { HelloQueryDocument } from '#schema'; // after this issue is merged

import HelloQuery from './Hello.query.graphql'; // actual `.graphql` file, transformed with a build step or dev-server plugin

// old style codegen, but still supported with some type inference
class OldStyleHelloQueryElement extends ApolloQuery<HelloQueryData, HelloQueryVariables> {
  query = HelloQuery;
}

// new style, accepting a TypedDocumentNode
class HelloQueryElement extends ApolloQuery<HelloQueryDocument> {
  query = HelloQuery;
}

OR
import { HelloQueryDocument } from '#schema'; // full codegen
// OR
import { HelloQueryDocument } from './Hello.query'; // file codegen

// also supported via `typeof`
class HelloQueryElement extends ApolloQuery<typeof HelloQueryDocument> {
  query = HelloQueryDocument;
}


LESS.js

Just another idea,
Creating CSS patterns often requires to manually compute values (ex: "half the size"...), or have a variable in mind (ex: "my background is white")...
Have you thought of using something like LESS?
The pattern could then be saved as less stylesheet, but it should be displayed as plain CSS on the site (like it is) to allow users to just copy/paste the snippet which is good.
Let me know your thoughts about it ;)
— Antoine

Hello LeaVerou,
From personal experience the "Less" does not work with inline attributes "style".

You could create a LESS file assigning each gradient to a class (ex: .zig-zag) and then assign that class to the corresponding li

This would require editing two places to add a pattern instead of just one.

A LESS option would be nice for Less users I'm sure. FYI there's a Sass version that a few of us have been working on as part of Compass Recipes
https://github.com/MoOx/compass-recipes/tree/master/stylesheets/recipes/background

I'm making a stylesheet of LESS mixins of all the gradients.


Read qr and barcodes

Add the ability to read barcodes
Closes #195

I use this tool via the PowerToys, and it would be very handy for the OCR to also recognize QR codes on screen and allow us to copy the URL or follow the URL that is encoded.


Add github test run for Node 20 and 22.

Run added for Node 20 in #1035

(Keeping the issue for Node 22, will wait a little bit until our github action usage is a bit lower)

We now default to Node 22 for all


Should bobbin gdb behave differently with j-link?

When calling bobbin gdb with j-link you must first start the GDB server and set port manually. Wouldn't it be more user-friendly if JLinkGDBServer was started in a child process? This way one could have the port specified in the config, and make sure the server started on the same port as gdb eventually would connect to.
This would perhaps also remove the need for the bobbin jlink command, making the interface more uniformly over all debug hardware.

Yes, that was the original intended behavior, but I ran into some problems where Control-C signals going to GDB were also being sent to the JLinkGDBServer / OpenOCD process, killing them. Doing this properly requires setting up a separate process group for the GDB server when spawning the child. I will be taking a look into this.


Joining already joined numbers

Describe the bug
Example sequence [2,2,4,8] on the press of the right move button will result in [0,0,0,16] sequence.
Expected behavior
Once joined the numbers shouldn't join again in one move.
Desktop (please complete the following information):

Version [dev]

Fixed. Now there's a property that blocks already joined numbers from doing that again in the same round


Pipeline failing on "publishing code coverage report to codeclimate"

Describe the bug
Code Pipeline to verify the changes of the code is broken due to:
Error: you must supply a CC_TEST_REPORTER_ID ENV variable or pass it via the -r flag

LINK: https://github.com/IBM/scc-go-sdk/runs/4781084363?check_suite_focus=true#step:4:35
~PR request: https://github.com/IBM/scc-go-sdk/pull/70~
To Reproduce

Make a PR request against the repo.
Submit the PR to trigger pipeline.

Expected behavior
Not having  CC_TEST_REPORTER_ID as a error
Screenshots
If applicable, add screenshots to help explain your problem.
Must gather (please complete the following information):

SDK Version: 1.0.0
Go Version: go version go1.17.5 darwin/amd64 <-- local
Name of service that you're trying to use (if applicable)
Name of operation that you're trying to invoke (if applicable)

Additional context
Add any other context about the problem here.
Were you able to avoid the problem by changing your application code slightly?

@tyao117  This is not an issue, this is expected behaviour. Github Actions does not expose repo secrets to any forked repo. So, whenever pipeline runs for any commit inside the forked repo or any PR from forked repo to main repo, secrets are always missing….
Correct process is:

Get a non-main branch in main repo and start working inside it
Then, raise PR from non-main branch to main branch

Also, can you check the Verify stage of pipeline too as it is failing and it doesn't require any repo secret.

@gary1998 Couldn't push the branch onto the repo:
(.direnv)➜  scc-go-sdk git:(notify_update) ✗ git push --set-upstream origin notify_update
remote: Permission to IBM/scc-go-sdk.git denied to tyao117.
fatal: unable to access 'https://github.com/IBM/scc-go-sdk.git/': The requested URL returned error: 403

After @gary1998 gave me permission to write to the repo, I was able to write to the repo. Closing the issue.


Add the ability to get components cross container view

Hello!
Lately I'm working with Structurizr and having a lot of fun, but I'm looking for specific view I can't get by now.
I want to see a connection from one component in container to other component in container, and actually see in one view two different components from two different containers.
For example, let's look in this DSL:
`   model {
customer = person "Personal Banking Customer" "A customer of the bank, with personal bank accounts." "Customer"
    enterprise "Big Bank plc" {
        supportStaff = person "Customer Service Staff" "Customer service staff within the bank." "Bank Staff"
        backoffice = person "Back Office Staff" "Administration and support staff within the bank." "Bank Staff"

        mainframe = softwaresystem "Mainframe Banking System" "Stores all of the core banking information about customers, accounts, transactions, etc." "Existing System"
        email = softwaresystem "E-mail System" "The internal Microsoft Exchange e-mail system." "Existing System"
        atm = softwaresystem "ATM" "Allows customers to withdraw cash." "Existing System"

        internetBankingSystem = softwaresystem "Internet Banking System" "Allows customers to view information about their bank accounts, and make payments." {
            singlePageApplication = container "Single-Page Application" "Provides all of the Internet banking functionality to customers via their web browser." "JavaScript and Angular" "Web Browser"
            mobileApp = container "Mobile App" "Provides a limited subset of the Internet banking functionality to customers via their mobile device." "Xamarin" "Mobile App" {
                mobileAppComponent = component "Mobile App Component"
            }
            webApplication = container "Web Application" "Delivers the static content and the Internet banking single page application." "Java and Spring MVC"
            apiApplication = container "API Application" "Provides Internet banking functionality via a JSON/HTTPS API." "Java and Spring MVC" {
                signinController = component "Sign In Controller" "Allows users to sign in to the Internet Banking System." "Spring MVC Rest Controller"
                accountsSummaryController = component "Accounts Summary Controller" "Provides customers with a summary of their bank accounts." "Spring MVC Rest Controller"
                resetPasswordController = component "Reset Password Controller" "Allows users to reset their passwords with a single use URL." "Spring MVC Rest Controller"
                securityComponent = component "Security Component" "Provides functionality related to signing in, changing passwords, etc." "Spring Bean"
                mainframeBankingSystemFacade = component "Mainframe Banking System Facade" "A facade onto the mainframe banking system." "Spring Bean"
                emailComponent = component "E-mail Component" "Sends e-mails to users." "Spring Bean"
            }
            database = container "Database" "Stores user registration information, hashed authentication credentials, access logs, etc." "Oracle Database Schema" "Database"
        }
    }

    # relationships between people and software systems
    customer -> internetBankingSystem "Views account balances, and makes payments using"
    internetBankingSystem -> mainframe "Gets account information from, and makes payments using"
    internetBankingSystem -> email "Sends e-mail using"
    email -> customer "Sends e-mails to"
    customer -> supportStaff "Asks questions to" "Telephone"
    supportStaff -> mainframe "Uses"
    customer -> atm "Withdraws cash using"
    atm -> mainframe "Uses"
    backoffice -> mainframe "Uses"

    # relationships to/from containers
    customer -> webApplication "Visits bigbank.com/ib using" "HTTPS"
    customer -> singlePageApplication "Views account balances, and makes payments using"
    customer -> mobileApp "Views account balances, and makes payments using"
    webApplication -> singlePageApplication "Delivers to the customer's web browser"

    # relationships to/from components
    singlePageApplication -> signinController "Makes API calls to" "JSON/HTTPS"
    singlePageApplication -> accountsSummaryController "Makes API calls to" "JSON/HTTPS"
    singlePageApplication -> resetPasswordController "Makes API calls to" "JSON/HTTPS"
    mobileAppComponent -> signinController "Makes API calls to" "JSON/HTTPS"
    mobileApp -> accountsSummaryController "Makes API calls to" "JSON/HTTPS"
    mobileApp -> resetPasswordController "Makes API calls to" "JSON/HTTPS"
    signinController -> securityComponent "Uses"
    accountsSummaryController -> mainframeBankingSystemFacade "Uses"
    resetPasswordController -> securityComponent "Uses"
    resetPasswordController -> emailComponent "Uses"
    securityComponent -> database "Reads from and writes to" "JDBC"
    mainframeBankingSystemFacade -> mainframe "Makes API calls to" "XML/HTTPS"
    emailComponent -> email "Sends e-mail using"

views {

    component apiApplication "Components" {
        include *
        animation {
            singlePageApplication mobileApp database email mainframe
            signinController securityComponent
            accountsSummaryController mainframeBankingSystemFacade
            resetPasswordController emailComponent
        }
        autoLayout
    }

    }
}

}
`
Taken from this example with few modification: https://structurizr.com/dsl?example=big-bank-plc, and I'm taking a look on the component view:
        component apiApplication "Components" {             include *             animation {                 singlePageApplication mobileApp database email mainframe                 signinController securityComponent                 accountsSummaryController mainframeBankingSystemFacade                 resetPasswordController emailComponent             }             autoLayout         }
The drawing we're having is:

Even though component inside the mobileApp container is communicating with one of the applications in the API Application container, the connection seems straight from the container itself.
I know that's the intention, but what I wanted to have is the possibility to see also the component inside the "mobileApp" container with dotted lines around the mobileApp container.
I guess it will require a different view, because such kind of view not falling on any of component / container / SystemLandscape view.
Such view (with inner components of several containers) can be quite loaded, so I guess using it with filtered view is the way to go (seeing only connection relevant to this drawing)
The benefit of this kind of view is seeing connection cross containers, and no only in the container level
In the project I'm working in, we're having few containers, each one of them including several processes (components).
My wish is to demonstrate connection between components, and that's where this request coming from
Thanks! Omri

You can show the connections between components, for example:
workspace {

    model {
        softwareSystem "Software System 1" {
            container1 = container "Container 1" {
                component1 = component "Component 1"
            }
        }

        softwareSystem "Software System 2" {
            container2 = container "Container 2" {
                component2 = component "Component 2"
            }
        }

        component1 -> component2 "Uses"
    }

    views {
        component container1 {
            include component1 component2
            autoLayout
        }
    }

}

Does that help?

It is, thanks :)
But I would glad to see the context of the component found "outside" the view, in this case I'll get container1 with component1 in it, connected straight to copmonent2 without knowing from which container it originates.
Is it possible to see it as well?
Also, I red the documentation and didn't see there's option to use the include statement (in container / component view) with tags, only with specific elements - am I missing something?
Thanks again, Omri

If you try that fragment at https://structurizr.com/dsl you'll see that both container boundaries are drawn ... the Structurizr renderer supports this now, and the next version of the CLI will do the same for the PlantUML, Mermaid, and DOT exports.

Also, I red the documentation and didn't see there's option to use the include statement (in container / component view) with tags, only with specific elements - am I missing something?

Yes, you can include elements by tag in container and component views -> https://github.com/structurizr/dsl/blob/master/docs/language-reference.md#include

Thanks a lot! I think that's it
I see that the PlantUML generation is working fine both in the Structurizr DSL webpage, but the C4Plantuml is different in the webpage and CLI (v1.9.0) (Based on the model you've provided in the comment)
DSL Webpage C4Plantuml generation:
`
@startuml
title Software System 1 - Container 1 - Components
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml
LAYOUT_WITH_LEGEND()
Container_Boundary("2_boundary", "Container 1") {
Component(3, "Component 1", "")
}
Container_Boundary("5_boundary", "Container 2") {
Component(6, "Component 2", "")
}
Rel_D(3, 6, "Uses")
@enduml
`
CLI Generation:
`
@startuml(id=SoftwareSystem1-Container1-Component)
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml
LAYOUT_WITH_LEGEND()
title Software System 1 - Container 1 - Components
Container_Boundary(2_boundary, Container 1) {
Component(3, "Component 1", "", "")
Component(6, "Component 2", "", "")
}
Rel_D(3, 6, "Uses", "")
@enduml
`
That yields to:

That's the issue you've talked about that will be solved in next CLI release or should I open an issue?
Other than that you've helped me a lot and I think I'll manage from here
THanks, Omri

Thanks. No need to raise another issue ... what you see at structurizr.com/dsl is what will be in the next CLI release.

Was this functionality undone? I can see the components only if I don’t add a relationship between them, in plantuml and plantuml/c4plantuml exports.


problem to run

Hi
I followed the instructions but when I enter "python pixel_art_extractor.py -h", I get this error:
Traceback (most recent call last):
File "F:\VISUAL STUDIO PROJECT\PIXEL ART\video\Pixel Art Extractor\pixel_art_extractor.py", line 7, in
import cv2
ModuleNotFoundError: No module named 'cv2'
What do I need to do now?
I have installed python 3.10.4 in windows

Hi
Sorry, i'm user "ghost" and this question was written by me.
I was not happy with my github name so I have taken another.
PixelArtGirl

@pixelart-girl Sorry, I forgot to add the required PIP packages to the read me. I have updated the docs. I believe the packages needed are:
pip install opencv-python
pip install argparse
pip install numpy
pip install matplotlib

Let me know if I have missed any (i.e. you get another ModuleNotFoundError, or any other error for that matter)

Thanks it runs now!


Cancellation requests are not working

Bug report
Cancelling queries is not possible using the Ctrl+C in psql when connecting to postgres to supavisor
Describe the bug
Clients can send cancellation requests for a connection, and this then cancels the query. This is not implement at all in supavisor.
When pressing Ctrl+C in psql on select pg_sleep(5), I get the following error:
23:53:41.111 [error] Client startup message error: :bad_startup_payload file=lib/supavisor/client_handler.ex line=114 pid=<0.917.0>

Could be related to #127, since cancellation requests are currently reported as bad startup packets even though they are completely valid parts of the protocol.

Thanks for identifying this issue!

fixed in https://github.com/supabase/supavisor/pull/194


Add possibility to configure a new root CA

Hello, Could it be possible to add the possibility of adding our root CA  in assemblyline-core for access our registry or other service
assemblyline version: 4.1.stable
kubectl version:
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.4", GitCommit:"b695d79d4f967c403a96986f1750a35eb75e75f1", GitTreeState:"clean", BuildDate:"2021-11-17T15:48:33Z", GoVersion:"go1.16.10", Compiler:"gc", Platform:"linux/amd64"}
kubernetes version:
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.6", GitCommit:"d921bc6d1810da51177fbd0ed61dc811c5228097", GitTreeState:"clean", BuildDate:"2021-10-27T17:44:26Z", GoVersion:"go1.16.9", Compiler:"gc", Platform:"linux/amd64"}
if I add my Root certificate in service's dockerfile, i can update different service in TLS.
For example, in yara's dockerfile, after i add my CA in /usr/local/share/ca-certificates, the yara service can update without having to specify ssl_ignore_errors: true in service_manifest.yml. These updates are done on a git repository in my infrastructure.
However by doing the same thing in assemblyline-core, the updater (urlib3? ) does not seem to take into account the certificates installed in the docker.

Updater logs
{"@timestamp": "2021-12-10 09:23:24,515", "event": { "module": "assemblyline", "dataset": "assemblyline.service.updater" }, "host": { "ip": "<IP_ADDRESS>", "hostname": "updater-6d6d4fcb97-c2hqc" }, "log": { "level": "INFO", "logger": "assemblyline.service.updater" }, "process": { "pid": "1" }, "message": "Started"}
{"@timestamp": "2021-12-10 09:23:24,788", "event": { "module": "assemblyline", "dataset": "assemblyline.service.updater" }, "host": { "ip": "<IP_ADDRESS>", "hostname": "updater-6d6d4fcb97-c2hqc" }, "log": { "level": "ERROR", "logger": "assemblyline.service.updater" }, "process": { "pid": "1" }, "message": "Exiting:\nTraceback (most recent call last):\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 699, in urlopen\n    httplib_response = self._make_request(\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 382, in _make_request\n    self._validate_conn(conn)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 1010, in validate_conn\n    conn.connect()\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/connection.py", line 416, in connect\n    self.sock = ssl_wrap_socket(\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/util/ssl.py", line 449, in ssl_wrap_socket\n    ssl_sock = ssl_wrap_socket_impl(\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/util/ssl.py", line 493, in _ssl_wrap_socket_impl\n    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)\n  File "/usr/local/lib/python3.9/ssl.py", line 500, in wrap_socket\n    return self.sslsocket_class._create(\n  File "/usr/local/lib/python3.9/ssl.py", line 1040, in _create\n    self.do_handshake()\n  File "/usr/local/lib/python3.9/ssl.py", line 1309, in do_handshake\n    self._sslobj.do_handshake()\nssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/adapters.py", line 439, in send\n    resp = conn.urlopen(\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/connectionpool.py", line 755, in urlopen\n    retries = retries.increment(\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/urllib3/util/retry.py", line 574, in increment\n    raise MaxRetryError(_pool, url, error or ResponseError(cause))\nurllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='registry.hub.docker.com', port=443): Max retries exceeded with url: /v2/repositories/cccs/assemblyline-service-apkaye/tags?page_size=5&page=1&name=stable (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')))\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/assemblyline_core/server_base.py", line 99, in run\n    self.try_run()\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/assemblyline_core/updater/run_updater.py", line 478, in try_run\n    self.container_versions()\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/assemblyline_core/updater/run_updater.py", line 464, in container_versions\n    image_name, tag_name, auth = get_latest_tag_for_service(service, self.config, self.log)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/assemblyline_core/updater/helper.py", line 127, in get_latest_tag_for_service\n    tags = _get_dockerhub_tags(image_name, update_channel)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/assemblyline_core/updater/helper.py", line 169, in _get_dockerhub_tags\n    resp = requests.get(url)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/api.py", line 75, in get\n    return request('get', url, params=params, **kwargs)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/api.py", line 61, in request\n    return session.request(method=method, url=url, **kwargs)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/sessions.py", line 542, in request\n    resp = self.send(prep, **send_kwargs)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/sessions.py", line 655, in send\n    r = adapter.send(request, **kwargs)\n  File "/var/lib/assemblyline/.local/lib/python3.9/site-packages/requests/adapters.py", line 514, in send\n    raise SSLError(e, request=request)\nrequests.exceptions.SSLError: HTTPSConnectionPool(host='registry.hub.docker.com', port=443): Max retries exceeded with url: /v2/repositories/cccs/assemblyline-service-apkaye/tags?page_size=5&page=1&name=stable (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')))\n"}

the `registry.hub.docker.com` is a registry in our environment

There's two ways to go about this:
There's a configuration in values.yaml:  configuration.services.allow_insecure_registry: true
or you can create a configmap containing your CA bundle and mount that configmap using coreVolumes & coreMounts.
This will involve adding REQUESTS_CA_BUNDLE to coreEnv to point to your bundle of external certificates for the system to use should configuration.services.allow_insecure_registry not be set.

Hello, I have updated the core image with my certificates and added the environment variable pointing to /etc/ssl/certs/ca-certificates.crt and it works.
I will test the solution with the configmap later because it makes me simpler and cleaner than recreating a docker image.
The use of REQUESTS_CA_BUNDLE should be documented for those who cannot use allow_insecure_registry
You can close.
thanks

Instructions for mounting internal root CAs can now be found in the Troubleshooting section of our docs:
https://cybercentrecanada.github.io/assemblyline4_docs/administration/troubleshooting/


cravening, bobolink (logical-conflict)

This pull request was generated by the 'mq' tool

/trunk merge


Fix wrong minimum in peg out

What

DevPortal shows wrongly the minimum peg out value (strict equal instead of greater than)

Why

Avoid people loosing their funds

Need to merge #501 first, which fixes the CI failure - unrelated to this PR itself.

Need to merge #501 first, which fixes the CI failure - unrelated to this PR itself.


Display log messages from bot in dashboard

Dashboard should display only last five log messages.

Added redux to hold state for dashboard log messages between routes.
Log messages are displayed in reverse order and in scrollable DIV now.


Converted the project to a package

Could you please check on this?

Oops, I didn't saw this. Please mention like this @name, so the user will get a mail. Or you can request a review .

Thanks for the PR. Looks good!!

Can you please create a .gitignore and add __pycache__. That will remove the .pyc files. example

Can you please create a .gitignore and add __pycache__. That will remove the .pyc files. example

Sure, I'll do that

Oops, I didn't saw this. Please mention like this @name, so the user will get a mail. Or you can request a review .

The reviewer tab is empty..

I have added the gitignore @twentyse7en

The reviewer tab is empty..

@AthulJoshi You've to click on the gear/settings icon

The reviewer tab is empty..

@AthulJoshi You've to click on the gear/settings icon

Idk why but there isnt a gear icon. Is it a problem of this PR?

I think you have already tracked the __pycache__ folder. .gitignore will not remove the tracked one. So for this time, you have to manually remove the __pycache__ folder or try git rm --cached __pycache__  -r.

@AthulJoshi You've to click on the gear/settings icon

Idk why but there isnt a gear icon. Is it a problem of this PR?

My bad! You didn't have write access to this repository. If the icon is visible now, please test it out for us by asking @twentyse7en for a review. Thanks! :D

The pycache files are not being ignored. Do i have to add each of the files in the .gitignore?

The pycache files are not being ignored. Do i have to add each of the files in the .gitignore?

No, It's there because you have already tracked those files earlier by git add, you need to manually delete those folders for now. Next time onwards they will be ignored.

Sorry for these many pushes. I should've checked everything first ().

Sorry for these many pushes. I should've checked everything first .

No worries : ) Multiple pushes are common when we work.

Thanks for taking care of this.


Removed persistent peers from configuration

We are now relying on seed nodes and the community network for peering connections, no connections should be made specifically to these nodes going forward

@mlatimer-figure node-config.yaml needs updated as well. that is the config used in the docker images.

@mtps does this look good in your opinion?

Yep! LGTM

Superseded by #33.


Incorrect GDScript highlighting of variables passed as values in dictionary function arguments.

Godot version
4.2.dev4
System information
Godot v4.2.dev4 - Pop!_OS 22.04 LTS - X11 - Vulkan (Forward+) - integrated Intel(R) Graphics (ADL GT2) () - 12th Gen Intel(R) Core(TM) i5-1235U (12 Threads)
Issue description

I noticed the bug in a real use case here. Note that w and h are highlighted like they are types.
Steps to reproduce
var a = 3
f({"a": a})

Paste this into a script
Minimal reproduction project
N/A

Looks like this is happening because it thinks it's a function argument hint (because of the colon ':"). I have a potential fix here (tested and seems to work) https://github.com/adeneve/godot_fork/tree/gdscript_dict_highlighter_fix. Let me know what you guys think!

Make a PR please!

Ok, PR created. FYI, I made a slight change to try to account for nested dictionaries.


EMF (Entity Model Features) Compatibility

is it possible to made compatibility with EMF mod? i try to made this: https://www.planetminecraft.com/texture-pack/vanilla-arrows-plus-2d-model/
but with your arrow tip, but doesnt work :c

sadly I do not think I can
the problem is i have to change some things about the vanilla arrow rendering to get the tint to show
and EMF just overrides the vanilla renderer.
It might be possible to make a EMF texture pack that is compatible but at least on the Optifine page, I wasn't able to find anything about color tint. so I also don't think this is possible...
sry

oh sadly :c so thx anyway


[Wave8] Redesign account settings page

Details

Some changes were made for elements where we were using theme colors so I updated it for both light and dark motives analogically.
I added if statement in getIconFillColor to properly handle new colors for pressed items in the menu list. Otherwise, this change would be applied also to items that are not from the menu list. Seemed to be the best solution in terms of reducing code duplication and keeping the codebase clean.
Figma design that I used as a reference:
https://www.figma.com/file/Xv3yHJooZcxRGkXbAcTZD5/%23ideal-nav-(Ideal-Nav)?type=design&node-id=1243%3A262825&mode=design&t=a2Zjsrxho7sk6ZLV-1
Fixed Issues
$ https://github.com/Expensify/App/issues/31766
PR addresses a point describing the redesign of the account settings.

PROPOSAL:
Tests

[ ] Verify that no errors appear in the JS console

Mobile devices:

[ ] Pressing and holding on menu items should make rounded highlights visible

Desktop:

[ ] Hovered item should change color
[ ] Clicked / pressed item should change color
[ ] Margins should be non-clickable (space on the left and right side of the menu item)

Offline tests
--

QA Steps

Same as test steps
PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
Android App.webm

Android: mWeb Chrome
Android Chrome.webm

iOS: Native
https://github.com/Expensify/App/assets/60450261/e847101d-caee-4db3-9ff9-d1334b493c3d

iOS: mWeb Safari
https://github.com/Expensify/App/assets/60450261/89ca041e-c492-43e6-b6e7-2faf410bfb45

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/60450261/e0e21587-5f23-4d46-aa0d-9b852d59335d

MacOS: Desktop
https://github.com/Expensify/App/assets/60450261/69c4391b-d5ce-4770-829f-a4062ac593fd

Please note that we have a lot of Navigation.goBack(ROUTES.SETTINGS_WORKSPACES) (workspaces item was removed from settings)  in the codebase. Since it is rather difficult to adjust all those things in one PR, we will adjust it once the other parts of the navigation are finished.
It is good to wait with merging of this PR in this case even after approval.

Since we have a dedicated branch for work with navigation (ideal-nav). I think it would be best to merge it there.

Is this ready for review again?

Let's sync ideal-nav with main regularly (i.e. 2 times a week)

Can you please ask engineer who created this branch?

Hi @aimane-chnaif. Recently we created an analogical ideal-nav branch on our fork. Simply to speed up the process of gluing the components for navigation together. I'm closing this PR and moving this to our fork. Nevertheless, I will double check if we have more regressions.


feat: added tappedGlobalSearchBar

The type of this PR is: feat

Description
This PR adds TappedGlobalSearchBar event. This event will be used to track taps on the search bar.

PR Checklist (tick all before merging)

[x] If I've added a new file to the tree I've exported it from the common index.ts
[x] I've added comments with examples for any new interfaces and ensured that they're in the docs
[x] No platform-specific terminology has been used outside of click and tap (platform is inferred by the DB storing events)

:rocket: PR was released in v4.216.0 :rocket:


Missing dummy favicon

Generated project lacks of dummy favicon image and meta declaration

Added a dummy Bireli logo and add it as default favicon in project, commited in 0.3.4-pre.9


Additional Icons

Is it possible to find additional social icons to add to the Oxygen templates?  Maybe find the specific icon library or something that was used or something?

@kaytcat do you know which icon set was used?


Added documentation about the GetSiteScriptFromWeb REST API;

Category

[ ] Content fix
[x] New article

What's in this Pull Request?
Documentation about the new REST API GetSiteScriptFromWeb.

Could you please explain me documentation?

Excellent @JarbasHorst, appreciated. Updates visible in the docs within 15-20 min - https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/site-design-rest-api


perf(deps): update dependencies to latest version

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes: #23
Summary:
Update package dependencies - specifically for semantic release.
Type of change:
Please delete options that are not relevant.

[ ] New capability
[x] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[ ] Other (please elaborate)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

:tada: This PR is included in version 2.1.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[5.9] cherry pick multiple PRs into release/5.9

Cherry-picks the following PRs to release/5.9:

#1580
#1566

Waiting for https://github.com/apple/swift-syntax/pull/1484

Let’s not cherry-pick this PR as a collection of multiple PRs.

https://github.com/apple/swift-syntax/pull/1484 seems like it has very marginal value of a specific case and I think it’s lookahead logic is not super straightforward
https://github.com/apple/swift-syntax/pull/1566 already has its own cherry-pick PR
https://github.com/apple/swift-syntax/pull/1580 also has its own cherry-pick PR


Add clj-kondo exports

Great library!
This configuration helps clj-kondo understand the defworkflow and defactivity macros.
Let me know if you have better ideas on how to organize the resources path. I thought dev/user.clj, dev/utils.clj and  dev/resources kinda made sense.

Hi,
Thanks for the patch, and sorry for the delay in responding.  I somehow missed the notification from GH.
I'm curious about why you moved the dev-resources files. I generally use them in all of my projects since they are in the path by default. Does this cause a problem with clj-kondo?

Ah, I didn't know it was a special directory name. I can see now that Leiningen adds it to the resource paths automatically. I'm six months into Clojure, and have only been using tools.deps until now.
It doesn't cause a problem with clj-kondo. I have seen other tools.deps projects using dev and I thought dev/resources sounded better than dev-resources/resources.
How about this?
dev-resources/resources/clj-kondo/clj-kondo.exports/io.github.manetu/temporal-sdk/config.edn

That seems reasonable to me.

I found a list of projects which have added similar exports here. The done thing seems to be to use the resources directory, even in projects with no other resource. (See helix).
I went ahead and replicated the style used here, leaving the dev-resources directory alone. I can confirm it works on a couple of projects. LMK.

Code looks fine.  I'm not sure what's up with CI.  I might have to tweak something there.

Note that I submitted an MR recently, and it successfully ran through CI.  I am not sure why yours isn't

I think this is due to circleci configuration on my side. I created #62 with the same code and it passes. Closing this one.