Introduce a cmdlet for manipulation of list strings

Note:

Should this suggestion gain traction, an RFC is presumably needed.
By list string I mean a single string composed of items (tokens) separated by a separator, such as you would find in  $env:PATH, which contains a list of directories.
This suggestion is in part motivated by wanting a platform-independent mechanism for manipulating environment variables such as $env:PATH safely and conveniently - see #5340 and
https://github.com/PowerShell/PowerShell-RFC/pull/92

Manipulating such lists with text parsing is cumbersome, error-prone, and sometimes requires platform-specific separators, so a dedicated cmdlet, say Update-ListString (name negotiable) could ease the burden, by offering the following operations, with support for adding/removing arrays of items:

adding items:

prepend (-Prepend)
append (-Append)
insert before or after a given item  (-InsertBefore / -InsertAfter) - same as -Append, if the item doesn't exist

replacing items:

by name (item string) of an existing item (-Replace)  - same as -Append, if the item doesn't exist.

removing items:

by name (item string) (-Remove)
removing duplicate items on request (-RemoveDuplicate), keeping only the first occurrence
remove empty items (duplicate separators) on request (-RemoveEmpty)

Operations should be idempotent by default (desired-state logic):

on adding, quietly do nothing if the item(s) already exist
on removing, ignore the case where item(s) don't exist

With -Force, add operations should enforce the specified position - -Prepend, -Append, -InsertAt, -InsertBefore/After - by moving a preexisting item accordingly.
Separators can either be specified:

freely, as a regex (as you would pass to -split), with -Separator
or  via switch -AsDirList (name negotiable), in which case [IO.Path]::PathSeparator is used, representing the platform-appropriate separator used to separate entries in $env:PATH (and similar variables such as $env:CLASSPATH).

Open questions:

Is it necessary to also support by-index operations (-InsertAt, -RemoveAt, -ReplaceAt)? Conceivably, this could be added later.
How should escaping of separators embedded in items be handled? The simplest case would be to simply disallow embedded separators in items (assume that existing items don't have embedded separators, and report an error on trying to set items containing them). Conceivably, support for escaping could be added later via an -EscapeChar parameter.

Examples:
# WISHFUL THINKING

PS> Update-ListString -Separator ';' 'a;b;c' -Append 'd', 'e'
a;b;c;d;e

PS> Update-ListString -Separator ';' 'a;b;c' -Prepend 'd'
d;a;b;c

PS> Update-ListString -Separator ';' 'a;b;c;d' -Remove 'd', 'b'
a;c

PS> Update-ListString -Separator ';' 'a;;c' -RemoveEmpty
a;c

PS> Update-ListString -Separator ';' 'a;b;a;c' -RemoveDuplicate
a;b;c

PS> Update-ListString -Separator ';' 'a;b;c' -Replace 'b', 'd'
a;d;c

# No-op, if entry already present
PS> Update-ListString -Separator ';' 'a;b;c' -Append 'b'
a;b;c

# Enforce specified position
PS> Update-ListString -Separator ';' 'a;b;c' -Append 'b' -Force
a;c;b

Environment data
Written as of:
PowerShell Core 6.1.0

You've given it a general name, but the behaviour seems very specific to "$PATH variable". Are there any other use cases anyone can come up with (not counting CLASSPATH, but outside the world of environment variables for lists of paths)?
You call it Update-ListString, but none of Arrays, ArrayLists or Generic.Lists have operations exactly comparable to these; no InsertBefore or InsertAfter, no RemoveDuplicates. Where we do have types with similar operations, they don't behave like these described operations do.
String replace "words here".Replace('test', 'potato') does not produce "words here potato", and ArrayList.Replace() does not append to the list either in a case where the content is not found. (I wouldn't guess that 'replace' also doubled as 'Append').
ArrayList and Generic List have a Remove() method which takes out the first occurrence, and leaves the rest. If you filter for unique items, you keep the first and remove the subsequent ones. Your cmdlet does match this behaviour - but is that right? If I want to get rid of Java and I -Remove 'c:\program files\java\bin' then the -Remove will get rid of one entry but leave possible duplicates and -RemoveDuplicates will get rid of duplicates and leave one. In order to get rid of Java and I don't know whether there are duplicates, must I then run the cmdlet once to RemoveDuplicates and then again to Remove the remaining entry?
Then what happens if I have two entries for Java and I -InsertBefore, does it get inserted twice, once for each duplicate? If it's specific for PATH variables it should probably go before the first one only, but if it's a general "ListString" concept, should it go before every instance? Similarly, what if I -Replace a duplicate entry, does that replace both duplicates? I guess it would have to in order to make sense, but then I intuit that -Remove has -RemoveDuplicates so -Replace should have a matching -ReplaceDuplicates.
ArrayLists and Generic Lists have Insert(index, value) so they don't need an InsertAt method, but your description here is strange:

With -Force, add operations should enforce the specified position - -Prepend, -Append, -InsertAt, -InsertBefore/After - by moving a preexisting item accordingly.

If I try to prepend, how could it ever fail such that I need to -Force it? If I try to insert at position 10 but there's only 3 things in the list, what does forcing it do? Make 7 blank entries in between? If I try to insert at position 2 and I don't force it, it has to move the following items +1 index in order to work normally, so in what situation might I need to -Force it, and what would be different?

(-InsertBefore / -InsertAfter) - same as -Append, if the item doesn't exist

If I'm giving instructions based on my assumption that something will exist, but it doesn't exist, should that really be "make the change somewhere else instead", or should it really be an error?
I'm not against the idea overall, but it feels tailored to the behaviours which makes sense for environment variables full of paths, and not "Lists" in string form. Escaping rules are likely to also be specific to environment variables. Unless there are other use cases, I think I'd prefer if that specific nature was reflected in whatever name it ends up with.

I think the 90%+ use case is to manage environment variables.  Plus there is already a separate need to surface the [System.Environment]::Get/SetEnvironmentVariable methods as cmdlets.  I think it makes a lot of sense to create PathVariable management commands as part of that effort as described in https://github.com/PowerShell/PowerShell-RFC/pull/92

Yes, managing $env:PATH-like variables was definitely the motivation for this proposal.
I can currently think of only $env:PATH, $env:CLASSPATH and $env:PATHEXT (Windows only), and for the latter use of a cmdlet is probably overkill.
I was hoping it would generalize to other use cases where a list of items must be kept inside a string, but perhaps that's too rare a use case to worry about.
I can now see how multiple *-PathVariable cmdlets - that optionally allow a variable of a different name to be targeted - is probably the better solution, so I'll close this.

It is now a moot point, but as for your concerns, @HumanEquivalentUnit:
I specifically chose the noun "ListString" to avoid confusion with .NET list types - comparing their methods with what I'm proposing should not enter the picture.
The guiding principle for the suggested operations was desired-state logic, which, for instance, means that something targeted is allowed not to exist, with reasonable fallback behavior.
To address one question of yours as an example:

If I try to prepend, how could it ever fail such that I need to -Force it?

It couldn't fail, but the suggested default behavior was to leave a preexisting item alone, irrespective of its current position; -Force would then be needed to force moving it to the beginning.


Add --exclude cli option to add additional exclusions to uberjar

@tonsky we're using this fork at @nextjournal and I think a new CLI option could be useful. What do you think?
I've added an helper function to the main file because i'm envisionin the usage of this with multiple --exclude. before merging this i'd probably refactor a bit that namespace to use the get-options function (and add doc, etc.).

I like the idea! Please go ahead

Done! Please @tonsky have a look

Thanks! Will look soon

Looks fantastic, thank you for taking the time and doing the PR! Pushed as 1.1.0


xcode live rendering issue

@Daij-Djan
file:///DDCalendarView-master/Demos/CalendarDemo_objc/Base.lproj/Main.storyboard: error: IB Designables: Failed to update auto layout status: The agent crashed
file:///DDCalendarView-master/Demos/CalendarDemo_objc/Base.lproj/Main.storyboard: error: IB Designables: Failed to render instance of DDCalendarView: The agent crashed
recently facing these two errors in storyboard live rendering
xcode version 7.3
iOS 9.2

thats not something I cant reproduce. but I also dont support xcode7 anymore.
works fine here :)


I create 2 instance in two pages to pass data, while I write sth in one , can not read from the other one

I use electron to create two pages in the same origin "file://"
each pages has one instance, and then I write some thing in DB in page one, send a message to the page two,
then the instance in page two try to read the same DB, but read nothing.
Two pages have the same code below, one for write,the other for read
import Dexie from 'dexie'
let db = new Dexie("database");
db.version(1).stores({
    loginStatus: '++id',
});

    saveUserLoginStatus: async (username, keycheck) => {
        await db.transaction('rw', db.loginStatus, async () => {
            await db.loginStatus.where('id').above(0).delete()
            await db.loginStatus.add({ username, keycheck })
        })
    },
    getUserLoginStatus: async () => {
        let result
        await db.transaction('rw', db.loginStatus, async () => {
            result = await db.loginStatus.toArray()
        })
        if (result.length !== 0) return result[0]
    }

I try to debug, it show right result sometimes.
I don't know why?
And how to make it stable

Are you waiting for the promise from saveUserLoginStatus() to complete before communicating to other page to load data?

yes, all functions are waiting for the promise, as you see that all functions has async/await symbol.
I found that sometimes I type   db.loginStatus.toArray()  in console, it shows data, but at the same time still read nothing in script. it's really strange.
I use electron 1.8.2  version of chromium is 59
here is procedure flow
init page one - let db = new Dexie("database")
init page two - let db = new Dexie("database")
page one - saveUserLoginStatus()
send massge to page two - remote.BrowserWindow.fromId(pageTwoId).webContents.send('init')
page two - getUserLoginStatus()

Does dexie or indexedDB have cache system?

Dexie does not cache anything, but Chrome's indexedDB implementation might. I stumbled on the NOTE on this mozilla page stating that Firefox went over to "relaxed" durability. Might be the case with Chrome as well.
That's just a theory though. I tried briefly to find similar bug in chrome issue tracker but couldn't find it.
It could also depend on how the two different Electron based pages are launched. Are they in different Electron processes? Maybe it's "relaxed durability" related if so. If on same process, it could be so as well depending on the underlying implementation.
Think a repro of this would be great for this issue for filing it on Chrome issue tracker and also Electron's github page.

I'm sorry. It's a bug from my code.
I found this issue
It said that chrome doesn't use cache, saves data immediately, while edge not.
And then I re-check if every function has wait for promise,and found one not wait.
It works fine now.
Thanks for your reply, sorry for wasting your time.

Thanks for sharing! 👍


getAsMention fails for public role

I'm trying to send a message invoking the @everyone ping. My code (simplified) is something like this:
Guild server;
Role everyone;
RestAction<Message> sendMessageAction;
MessageBuilder messageBuilder;
Message message;

server = commandChannel.getGuild();
everyone = server.getPublicRole();

messageBuilder = new MessageBuilder();
messageBuilder.append(everyone.getAsMention() + " test");
message = messageBuilder.build();
sendMessageAction = channel.sendMessage(message);
sendMessageAction.complete();

The message comes through the Discord client as @@everyone test and does not actually ping @everyone. A bit of debug printing shows that a "normal" @everyone message looks like this to message.getRawContent:
@everyone test

whereas the failing @@everyone message looks like this:
<@&351278506111401984> test

Even more interesting, simply doing
messageBuilder.append("@everyone test")

rather than invoking everyone.getAsMention properly pings @everyone. In addition, manually entering <@&351278506111401984> test into the Discord client produces a failing @@everyone test message identical to the bot's failure.
I'm not sure exactly what's wrong, or whether it applies to more roles than @everyone. Individual user pings via getAsMention work correctly. The raw role-ping message appears to match Discord's requirements for role pings, too. This may actually be a Discord bug?

The everyone ping is a literal as in @everyone just like @here they are keywords

These mentions existed before discord added role mentions

So I'm meant to use messageBuilder.append("@everyone test") rather than everyone.getAsMention? If that's the case, please feel free to close this issue. I was under the impression @everyone and @here were just special context-dependent roles.

The role is only present to modify permissions

Understood. Thank you!


Avoid collisions at normalisation

It is currently possible to normalise special characters such that names collide.
For example, {"na!e": "Max",  "na%e": "Germany"} woulg get loaded as "na_e": "Germany"
Desired outcome would be to load both columns, avoiding collision by implementing some kind of extra hash at the end or similar. Or hashing the special character to its code?

we have such naming convention in the examples (adds hashes to names)


Integration with mix

I've been playing around with trying to make protobuf compilation happen during a project's mix compile, and it seems to be pretty feasible. Would this be an appropriate feature for this repo? Would you be up to review a PR to implement this?

I think not. One important feature of this library is compiling using protoc, which is the official and right way to do that.

The idea would be that mix would call protoc for you.

@DavidMikeSimon Then the things will become more complex. We have to support all options protoc support. I can't see what's the benefit from implementing that.

The benefits are:

Not having to manually recompile your .proto files every time you change them
Not having to commit .pb.ex files to your repo. These files are not true source code, but purely derivable artifacts of the build system.

For protoc options, we wouldn't have to specifically support everything it does. We can just provide a protoc_arguments option which accepts a list of strings for any additional command-line arguments.

.pb.ex files were one of main reasons why I replaced exprotobuf with this lib as soon as it was possible... magic modules/structs from nowhere are terrible

Checking in on if you've changed your mind @tony612
I would seriously consider using the Mix compiler behaviour. If you use it right, users get a lot of benefits.
https://hexdocs.pm/mix/Mix.Task.Compiler.html
Just check it out.

Checking in here, I'm planning on implementing a protoc Mix compiler for a couple reasons:

I prefer to use mix as my core build orchestration tool, to make my build pipelines more maintainable. Requiring the execution of protoc without a Mix compiler causes friction here
manually committing .pb.ex files is error-prone because I have to remember to run protoc locally and commit the generated file(s). This also causes headaches in local development

I think @DavidMikeSimon is right that this would be a pretty low-effort compiler to write, since protoc should do most if not all of the work. But one can only know once they've done it, so I'll see how it goes and report back here

This compiler intends to be a drop-in for compiling protobuf files stored in a project directory:
defmodule Mix.Tasks.Compiler.ProtocGen do
  use Mix.Task.Compiler

  def run(_args) do
    protobuf_dir = Application.get_env(:bootstrap, :protobuf_path, "priv/protobuf")

    if is_binary(protobuf_dir) and File.dir?(protobuf_dir) and
         not Enum.empty?(File.ls!(protobuf_dir)) do
      with {:ok, protoc_path} <- find_executable("protoc"),
           {:ok, _elixir_protoc_path} <- find_executable("protoc-gen-elixir") do
        protoc_files = File.ls!(protobuf_dir) |> Enum.map(&Path.join(protobuf_dir, &1))
        IO.puts("Compiling protoc files: #{inspect(protoc_files)}")

        # Create the directory where we'll store protobuf generated files, if it doesn't exist
        File.mkdir_p!("./lib/protoc_gen")
        compile_while_successful(protoc_files, protoc_path)
      else
        {:error, {name, :not_found}} ->
          warn_without_stacktrace("Failed to find the #{name} exectuable on the path")
          {:error, []}
      end
    else
      warn_without_stacktrace(
        "Expected the #{inspect(protobuf_dir)} directory to contain at least one file, skipping Elixir protoc generation."
      )
    end
  end

  def clean do
    IO.puts("Cleaned up protoc module generation")
  end

  defp compile_while_successful(protoc_files, protoc_executable_path)
       when is_list(protoc_files) and is_binary(protoc_executable_path) do
    Enum.reduce_while(protoc_files, :ok, fn file_path, _acc ->
      case System.cmd(protoc_executable_path, ["--elixir_out=./lib/protoc_gen", file_path]) do
        {_, 0} ->
          {:cont, :ok}

        # Usually the message is printed by the command anyway
        {_message, nonzero_exit_code} ->
          warn_without_stacktrace(
            "Failed to generate Elixir protobuf modules for #{file_path} with exit code: #{
              nonzero_exit_code
            }"
          )

          {:halt, {:error, []}}
      end
    end)
  end

  defp warn_without_stacktrace(message) do
    IO.warn(message, [])
  end

  defp find_executable(name) do
    case System.find_executable(name) do
      nil -> {:error, {name, :not_found}}
      path -> {:ok, path}
    end
  end
end

It'll exit when the first protobuf file fails to compile, and stop the compilation. You'd register it in your mix.exs like:
def project do
  [
    # Be sure to add the compiler before the standard Mix compilers
    # This ensures that Protobuf-generated code is available before
    # the project's Elixir source is compiled.
    compilers: [:protoc_gen] ++ Mix.compilers()

    # ... Other project configuration
  ]
end


bug(chips-input) NO error state !

Bug, feature request, or proposal:
Bug
<form [formGroup]='group'>
  <mat-form-field class="example-chip-list">
    <mat-chip-list #chipList>
      <mat-chip *ngFor="let fruit of fruits" [selectable]="selectable"
              [removable]="removable" (removed)="remove(fruit)">
        {{fruit.name}}
        <mat-icon matChipRemove *ngIf="removable">cancel</mat-icon>
      </mat-chip>
      <!-- add formContorlName 'newFruit'  -->
      <input placeholder="New fruit..."
            formContorlName='newFruit'
            [matChipInputFor]="chipList"
            [matChipInputSeparatorKeyCodes]="separatorKeysCodes"
            [matChipInputAddOnBlur]="addOnBlur"
            (matChipInputTokenEnd)="add($event)">
    </mat-chip-list>
      <!-- add mat-error  -->
    <mat-error *ngIf="group.controls.newFruit.hasError('required')">required!</mat-error>
  </mat-form-field>
</form>

What is the expected behavior?
In this case, it can display error!
What is the current behavior?
If input is empty, no error will be displayed.
What are the steps to reproduce?
https://stackblitz.com/angular/pxxkxklrgaqg?file=app%2Fchips-input-example.html
You can try it on your example..
What is the use-case or motivation for changing an existing behavior?
Displaying error prompts when errors occur
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
All latest
Is there anything else we should know?
No.

I am seeing the same issue

User error on my side, my reactive form had the field defined as:
fieldName: new FormArray([])
I switched to:
fieldName: new FormControl([])

Closing as the form control should actually go onto the MatChipList since the list is what shows all of the control values.
You can see a fork of the stackblitz here in which if all of the chips are removed will show an error for required.

@josephperrott Your stackblitz does not work after you delete the fruit the first time. You need to retouch the input. There seems to be a validation issue when the chip input initializes. I'm currently having this issue on a real-life app.


bundler: Fix issues

swc_bundler:

[ ] denoland/deno#6802
[x] Handle reexports marked as transitive properly. (denoland/deno#8246)
[ ] Handle dependencies of module with circular dependency. (denoland/deno#8302)
[ ] Order of injection between import vs export (denoland/deno#8302)
[ ] denoland/deno#8308
[ ] denoland/deno#8314
[ ] denoland/deno#8325
[x] Make deno test verify exported names.

swc_ecma_parser:

[x] Don't panic on private name in interface (Closes #1211)

swc_ecma_transforms:

[x] dce: Prevent infinite loop
[x] Faster constant propagation pass.

this is related too: denoland/deno#8314

I found some fundamental design flaw of bundlers which prevents fixing the issues, so I'm working to change it fundamentally.
See: https://github.com/kdy1/swc/pull/8


Doc request: Missing Json field access - Docs only show creating and filtering

The docs here: https://www.prisma.io/docs/concepts/components/prisma-client/working-with-advanced-types#working-with-json
These docs oddly only show how to create records with Json and filter them by that Json. It is missing the most important part, data access.
Why does this not show how to access the Json attributes once you have found the record?
This should also be specific to Typescript being that Prisma advertises that it's an ORM for Typescript.

(see my closed issue for a code example: https://github.com/prisma/docs/issues/1338)


Created new dataset North Uganda 2020

North Uganda 2020

@ivanzvonkov - When the data pipeline check is initiated, there is an error related to micromamba setup which is failing the check. Let us know on how to fix this.

@adebowaledaniel - we are facing some micromamba related errors in our data-pipeline. Your help would be appreciated in moving ahead with this issue.

Hey @yashgadhiya10 sorry for the delayed response.
I've been dealing with the micromamba issue and a host of other issues here: https://github.com/nasaharvest/crop-mask/pull/406
Basically many things that crop-mask depended on: micromamba, GEE Sentinel-2 collection in OpenMapFlow, xarray, we're recently deprecated and that has caused some issues. I'm finishing up a fix today.

Still dealing with OpenMapFlow issue: https://github.com/nasaharvest/openmapflow/actions/runs/11941328078/job/33285918436

Fixed OpenMapFlow issue, now exporting new Senegal data and fixing area test issue, I think it has something to do with GDAL here: https://github.com/nasaharvest/crop-mask/pull/406

@yashgadhiya10 Okay, the data pipeline + all tests (except area) are working now. The data will take a day or so to get from Google Earth Engine

@ivanzvonkov Thank you so much for your help!
So it was just a manual error of placing the 2019-20 csv for 2020 dataset. I fixed the code and made another commit within the same branch. However it seems it is still giving the duplication error. So, I believe we have to remove the already present dataset from openmapflow cloud based on my understanding, do correct me if I am wrong but I am not sure how to remove those.
ceo-UNHCR-North-Uganda-Feb-2019---Feb-2020-(Set-1)-sample-data-2024-10-01.csv
ceo-UNHCR-North-Uganda-Feb-2019---Feb-2020-(Set-2)-sample-data-2024-10-01.csv
So, we won't need these csv files and we can keep the orginial ones.

@yashgadhiya10 since that dataset was already made in data/datasets it wasn't being created again. I've removed it which retriggers the pipeline

Hi @yashgadhiya10, the duplicates test was still failing so I checked the code and noticed that the start date was set to 2019-01-01 while it should be 2020-01-01. I've updated the date and re-triggered the pipeline.


[Feature] Capture groups

Hi,
First thanks for this, it's great.
Would it be possible to implement capture groups ?
IE contrived example:
text: my_function2()
search:  (.*)fun.*(\d+)
replace: "$2$1$2"
gives: "2my_2"
Note how I gave you nice edge cases while i was at it 🤣
Anyway just a nice feature to have imo.
Thanks.

Hey, thanks for raising this up.
This is a pretty useful feature, i will add it to the list.

@yassinebridi Thank you for this great util! This is pretty much the only feature I'm missing. I'd be happy to take a crack at it if you're open to that?

Hey @StefanTerdell, thanks 🙏
Yes please, would love that.


Behavior of sink* when match not found

I'm attempting to create a fzf.vim function which will either load a session (managed by https://github.com/manuel-colmenero/vim-simple-session) or create a new one. vim-simple-session contains a function called s:SwitchSession which, given a string, will switch to a session if it exists or create a new one by that name if it doesn't. I would expect the below code to work, but from what I can tell due to the commented out echom lines, the sink isn't getting called in the case that the exit status of fzf is 1 (a query was entered but there was no match). So the function works for switching to an existing session, but not for creating a new one.
related: https://github.com/junegunn/fzf/issues/345
function!  CallSimpleSessionSwitch(name)
  " echom 'wrapper to SwitchSession called'
  " echom join(a:name, "--")
  " due to --print-query, first item in list will be the typed query
  let session_name = a:name[-1]
  call SCall('plugin/session.vim', 'SwitchSession', [session_name])
endfunction

problem is around line 238 of fzf.vim where it checks v:shell_error. not sure what the proper behavior should be. I don't see why an exit status of 1 shouldn't continue on to call the callback function, but the comment there makes it pretty explicit so I'm guessing you have a reason. perhaps a new option should be accepted in the dictionary you can pass to fzf#run() to determine how exit status 1 should be handled?

actually after a little more investigation this definitely seems like a bug. if calling the tmux or neovim execute funcions, if fzf exits with status 1 it still calls the sink function. so my code from my original comment works fine if you open fzf in a tmux pane or a neovim :term. it's just the case of vim with fzf not in tmux where the behavior is different.

Cool, thanks. Exit status of 1 was a recent change, and I think I forgot to update the vim plugin accordingly.

So it should be:

0 or 1 -> sink
130 -> cancel, ignore
rest -> error message

Hmm, looks like tmux and term version also need update.

I just finished updating s:execute(), I'm happy to do those too but I'm not sure what you're referring to since they work fine for me

There are some corner cases, please send me the PR, I'll do the rest.

Merged your fix and updated the other ones too. Thanks!


Remove lint always_specify_types

This lint is not appropriate for repos under dart-lang. Only the
flutter SDK should use this lint.
For repositories under dart-lang we should always follow
https://www.dartlang.org/guides/language/effective-dart
Also run dartfmt.

cc @RedBrogdon @domesticmouse - note that dart-lang does not follow the same guidelines as flutter

LGTM. I'll definitely take your word on Dart best practices.


Run-URL can be anything to display run with ID 0

Description
Whilst trying to access the latest run of my action, I noticed, that the URL https://my-gitea.tld/user/repo/actions/runs/latest would always point to the run with the ID 0 (like https://my-gitea.tld/user/repo/actions/runs/0). This would also work with any other word (e.g. 'hello', 'world', 'anything', ...) instead of latest.
Would love to see "latest" to point to the newest run (run w/ highest ID) and any other word to point nowhere.
Couldn't reproduce on try.gitea.io because I have no action-runner I can access or repurpose available
Gitea Version
1.20.5
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.42.0
Operating System
Ubuntu 16.04.7 LTS
How are you running Gitea?
Downloaded binary with a systemctl service
Database
SQLite

The parameter behind /run/ is supposed to be a number and a failed number conversion just results in 0. This should be a proposal.

In Github Actions. The latest is not supported. For example in Gitea repo, I get  runs link https://github.com/go-gitea/gitea/actions/runs/6863940854, but https://github.com/go-gitea/gitea/actions/runs/latest is 404.
There is another problem.
https://github.com/go-gitea/gitea/actions/runs/6863940854 is from docker-dryrun workflow.
But  previous one https://github.com/go-gitea/gitea/actions/runs/6863940853 is from db-tests workflow.
The latest run can be from any workflow. Should we provide latest in this case ?

I am wondering why it is working on this [0] gitea server.
For starters it appears to be a forgejo server...

But would still love to see this in gitea.
If you for example have a repository with a single workflow (e.g. building a node project), getting the latest would make deployment using gitea more simple than before.

Oh you're right. I just saw the UI and assumed that it is a gitea server. But after your comment I looked again and scrolled down a bit: "Powered by Forgejo"

Resolved by #31808


Ability to customize the route url for the UI

One of the things I dislike is the route ends up being janky. it comes out as "https://argocd-server-argocd.apps.ocp.domain.com" when I want it to be something simpler like "https://argocd.apps.ocp.domain.com" so I end up having to add in an adjuster.
DOMAIN=oc get ingress.config -o jsonpath='{.items[0].spec.domain}'
oc patch route/argocd-server -n argocd -p "{"spec":{"host":"argocd."$DOMAIN""}}"

Hi @stephennimmo, thank you for the suggestion. This is something that we can look at when we start work on the Route handling as part of #160.


How to set month and year?

Hi,
to get current month i call YearMonth.now() and i get 2020-08, how can i set month and year like we used to set in calendar object like this
calendar.set(Calendar.YEAR, selectedYear)
calendar.set(Calendar.MONTH, selectedMonth)

and get 2021-03. thanks

i found it
val selectedMonthAndYear = YearMonth.of(2021, 03)
Thanks


Move persistence logic into SolrGraphDAO

From a first refactoring cycle, I definitely removed the SOlrGraphDAO at all: the Graph implementation can perfectly acts also as a data access object: there's no need to have an additional layer.
Good thing is that the R/W logic is completely within the Graph implementation...however, the overall design is not so clear...I don't like it, too much objects passed between layers

From a first refactoring cycle, I definitely removed the SOlrGraphDAO at all: the Graph implementation can perfectly acts also as a data access object: there's no need to have an additional layer.
Good thing is that the R/W logic is completely within the Graph implementation...however, the overall design is not so clear...I don't like it, too much objects passed between layers

As consequence of a first integration with SolrCloud, the SolrGraph has been completely removed and its behaviour has been split between LocalGraph and ReadOnlyCloudGraph. So this issue is no longer valid.


🔧 🎨  Initial setup for token creation form

Closes #180
This PR setups up the initial frontend for the token creation screen, with its token type selector and validatable form.

It includes generic formik components we can reuse.
It includes a very basic, non-responsive, grid system I will improve and submit in a future PR
It setups our theming constants as a Emotion theme context (so we don't have to import theming.ts all the time)
It adds yup as the validation library of choice
It adds react-select as the library of choice for searchable, creatable and async select inputs.
Note to @acnebs: I'm not a huge fan either of this kind of dependency. Right now the usage of react-select is contained to a single Formik <Select> component, so we can swap it for our own implementation later quite easily. I estimate building our own searchable custom select for all the use cases we have in the designs may very well take between a full day to three days of work, hence I made the choice to go with react-select for now to gain some speed. If we really don't want it as a dependency, we can swap it before this feature hits development

There's definitely some UI cleanup and improvements to do here but I thought this portion was getting too big already, so here it is for review!

Love the gif!
Writing this here because it may be the best place to capture it. But a suggestion of copy for the information hover over icon for 'Constellation'. This is a sticking point still as it needs to be clear what a constellation is.
'Constellation' is the term used for an NFT 'collection' on the Tokel Platform. A group of NFTs is called a Constellation.

Nice job! I am very excited about this feature.
A thought. I would move create token side menu option right after Dashboard, mainly because we don't have any other functionality there at the moment, so people don't get discouraged while clicking on side menu trying to find what is working.
One more thought, I think we could keep the values in the inputs when switching between NFT and Token options. I imagine someone filling it in and then realizing they wanted to make 3, switching to token and loosing all the text they put in. When this happens to me, I get pissed off and half of the time decide to not proceed 🤣
I will leave code-digging to @acnebs, I know he enjoys that 😉 Lets wait for both approvals on this one since it s a big PR plus a pretty important feature.

Looks great! Need to look a bit deeper but for now some initial thoughts about Emotion stuff:

Using V (which is just a helper object for CSS vars) directly instead of using Emotion's ThemeProvider is actually a deliberate choice. Performance of theming when you use arrow functions in all your styled components is actual very poor. Not super noticeable now, but definitely is when you switch themes. So we should stick to using V everywhere possible.
Likewise it is generally better to use Emotion's css prop rather than using the style prop as the css prop gets hoisted into a css class at build time, while style is used directly at runtime. Long story short css performs better.

thanks for the feedback y'all, will start adjusting 🙌


stick on top

hi, thank a lot to release this useful library
i have a simple issue as, how can i know stopper stick on top such as appBar?

Currently, the only place where you can see the current position of the stopper is the builder. I guess I could expose the state such that you can attach a listener.  Can you describe your use case scenario?

@aryzhov i think stop in builder can be provide that, is this right?

Yes, that's correct.


Update trolcommander to 0.9.9

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for the contribution. It was merged directly as 94f31fabd56e6514ec282ceb30a1e30f29385523. Your contribution is still credited to you.


CSS function recursion

This approach simply unwinds functions until it gets a non-function, then recurses normally.
What:
Style function recursion. Closes #390
Checklist:

[ ] Documentation
[x] Tests
[x] Ready to be merged
[ ] Added myself to contributors table

Codecov Report

Merging #391 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #391   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          10     10
  Lines         182    177    -5
  Branches       52     50    -2
=====================================
- Hits          182    177    -5

Impacted Files
Coverage Δ

src/get-glamor-classname.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Ok, added a test and it's working good! Ready to go.

Neat! Thanks for merging so quickly. How often do you cut releases?

Immediately and automatically :) This was published a few minutes ago as 4.12.0 :+1:

Thanks so much for your help! I've added you as a collaborator on the project. Please make sure that you review the other/MAINTAINING.md and CONTRIBUTING.md files (specifically the bit about the commit messages and the git hooks) and familiarize yourself with the code of conduct (we're using the contributor covenant). You might also want to watch the repo to be notified when someone files an issue/PR. Please continue to make PRs as you feel the need (you can make your branches directly on the repo rather than your fork if you want). Thanks! And welcome to the team :)

💃 💃 💃 💃 💃 💃 💃 💃 💃


Since new v1.13 release "Get it now" button doesnt do anything

v1.13.0-17969
osx 10.11.6
I noticed that a new release was available. Yet the button "Get it now" doesnt initiate the action it used to do. Normally im guided to the download page, now nothing happens.
The "Release Notes", does work but showes info from a different release i believe. I states that in this issue #14611

This release is for Windows only. If you're on a Mac (you say you're on OSX so I assume so?), then there's nothing to update!

I understand, but now i see this update icon all the time.

Also on macOS and seeing the update green icon.  Seems like this should not be happening and is certainly leading to confusion.

IMO even if the update for other operating systems added nothing at all, it should still happen just to get rid of the 'new build available' icon.

Agreed. I work on both mac and windows and I was able to perform the update on Windows and have the icon go away but on mac the icon just hangs around.

^Yeah, I recently got this issue too. A system to dismiss update icons would be ideal.

How has this not been fixed yet? Ridiculous.

It appears that this has been resolved? I'm not sure when since I've kind of just be ignoring it but I just opened Brackets and the update alert is gone.

Not resolved here.

Neither is it here


Videobuster.de

Hello,
maybe it's possible, so I'm asking here...
I wish to download a movie from www.videobuster.de via mpd web url (I found with firefox developer tools), but it seems youtube-dl does not support this web page as it maybe uses some encryption which is hard to "crack".
This is the target mpd web url:
https://vbcache1037.videobuster.de/upstream1036/movies/mpd/baa7be16769ec7f7bb8e0d79de73380c/12/explay-hd.ism/playlist.mpd
It's a DASH (mp4/avc1) video and is protected by "explay".
Quality informations are at the end of the "playlist.mpd" file (1080p would be the best).
And yes, I'm using the latest version of youtube-dl. :)
Would be nice if you can add this page to the "supported sites", and if you need some more details (account login etc.) just ask me. Thanks in advance.

DRM is not supported.


[BUG] Rancher dashboards are not loading on Safari

Setup

Rancher version: 2.7-head and latest
Browser type & version: Safari 16.1

Describe the bug
Rancher does not load on Safari. See screenshots below.
To Reproduce
Deploy Rancher on an EC2 instance and navigate to UI on Safari.
Result
Expected Result
Rancher UI to load.
Screenshots

Additional context

@geethub97 to confirm, this is happening on every page you've tried? Looks like a variable name typo (hopefully) so it should be an easy fix.

@gaktive I wasn't able to access the login screen so I couldn't check any of the other pages, so I'm not sure how many others are affected.

same as #8023 and fixed in #8029

@geethub97 as noted, a fix for this should already be in based on #8080 -- can you retest against that?

@gaktive tested, it's working now. thank you!!


Windows not honoring coffeelint.json

Using this on my Linux box is great. But on Windows 10 using the same project it fails to find a default config file regardless of where I put it.

I put coffeelint.json in the project root (where I run coffeelint from.
I add coffeelintConfig: to package.json
I copy coffeelint.json to %HOME% / $HOME

Every time it fails and I must use -f ./coffeelint.json

Actually, when using "coffeelintConfig": in package.jsonit does work as expected. Especially if you spell it right :D But it still doesn't read from thecoffeelint.json` config file


chore(deps): update renovate.json to combine ocb with collector

Need to add mdatagen & builder in the tools.go with this same thing.


69 separate python packages for epidata and bindings

Changes

epidata and bindings in separate python packages that can be installed on their own
packages have a shared namespace (memilio)
build and test each package independently in CI
updated readmes (for #94: added a troubleshooting hint for epidata package installation)
removed some obsolete files from pycode directory (for #96: deleted the create venv script)

closes #69
closes #96
closes #94
Merge Request - GuideLine Checklist
Guideline to check code before resolve WIP and approval, respectively.
As many checkboxes as possible should be ticked.
Checks by code author:

[x] There is at least one issue associated with the pull request.
[x] The branch follows the naming conventions as defined in the git workflow.
[ ] New code adheres with the coding guidelines
[ ] Tests for new functionality has been added
[x] A local test was succesful
[ ] There is appropriate documentation of your work. (use doxygen style comments)
[ ] If new third party software is used, did you pay attention to its license? Please remember to add it to the wiki after successful merging.
[ ] If new mathematical methods or epidemiological terms are used, has the glossary been updated ? Did you provide further documentation ?
is present or referenced. Please provide your references.
[ ] The following questions are addressed in the documentation*:  Developers (what did you do?, how can it be maintained?), For users (how to use your work?), For admins (how to install and configure your work?)
[x] For documentation: Please write or update the Readme in the current working directory!

Checks by code reviewer(s):

[ ] Is the code clean of development artifacts e.g., unnecessary comments, prints, ...
[ ] The ticket goals for each associated issue are reached or problems are clearly addressed (i.e., a new issue was introduced).
[ ] There are appropriate unit tests and they pass.
[ ] The git history is clean and linearized for the merge request.
[ ] Coverage report for new code is acceptable.

I still don't know what to do with the tools directory. I moved it to epidata for now because the only script in there is data related. If I see a directory "tools" in a software repository, I assume it's something used for maintenance of the repository or project somehow, not part of the functionality.

I think where it is, the tool folder is fine. The content of the tool folder is not part of the functionality, it just uses it to generate test data. However, since for tests in the future fictional data should be used, it would be also fine to delete it.

re-added extras-require to setup.py, but only one category (dev) instead of two (pylint, test). I think all developers should need both linting and testing to verify their work.
but did not remove requirements-dev.txt so far, it's used in CI python test jobs to install only the dependencies without the package itself (the package is loaded as an artifact from the python build job) and haven't found a good replacement without changing all the python jobs. Not worth it, imho.
Added lines about developer install (pip install .[dev]) to READMEs. Since the extras-require can only be used when installing with pip, I changed all the READMEs to recommend pip instead of using setup.py directly. As far as I know (I'm no python package expert), this is the recommended way anyway.

Like the "dev"-related changes. Installation via dev works for both python packages and tests run through. Two small remarks which can be maybe moved to other issues

[ ] Example folders are mssing Readmes which explain what the scripts do and what input us required
[ ] AttributeError: module 'memilio.simulation.secir' has no attribute 'SecirModel1' for running migration.py and migration_parameter_study.py I wonder if installation does not work properly althouh it seems so or if something is wrong in the example files.

Example folders are mssing Readmes which explain what the scripts do and what input us required

created #136

AttributeError: module 'memilio.simulation.secir' has no attribute 'SecirModel1' for running migration.py and migration_parameter_study.py I wonder if installation does not work properly althouh it seems so or if something is wrong in the example files.

There already is a separate issue for that (#115), the problems are unrelated to this PR.


TextInputLayout not working when inputType is textPassword

Hi there,
thanks a lot for your lib.
I found an issue.
    <android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPassword"/>
    </android.support.design.widget.TextInputLayout>

Using the support libraries "appcompat-v7" and "design" in version "25.0.0" the hint has the wrong type face. Filling in some text makes the hint becoming a label, which stays wrong.
Best regards,
DaRolla

Known issue related #57 #186 #201

Heads up @DaRolla you should be using: https://developer.android.com/reference/android/support/design/widget/TextInputEditText.html


Update Slider and ProgressBar widgets for muggle

Both of these are "stateless" from a use perspective, but slider needs to keep track of its width so it can calculate a new value during a mouse event. I believe the plan is to wrap these in a similar way to DynLabel so they can accept a closure.

The update methods should call invalidate. Apologies this isn't clear from the current code.

I believe I covered all your comments, other than the padding idea.
Adding hover and active made me realize I was doing some things slightly wrong with how the slider was behaving (it now will go to your cursor on click, even before you move your mouse, which seems like standard behavior).
But! It also exposes how roughly the slider is implemented. I'm not differentiating between the knob and the track — the whole widget is "hot" if the cursor is inside its layout box. Any ideas how to improve that situation? Should perhaps the knob be its own widget?

The update methods should call invalidate. Apologies this isn't clear from the current code.

Just to clarify: you're saying I should add back the ctx.invalidate() to those update methods?

I think we're still figuring out how composability should work in situations like this. I would be tempted to just do manually hit testing on the knob to determine how we paint it, but I haven't thought about this hard.

Okay, added a manual hit test for the knob. It adds a little bit more state but doesn't feel too bad to me.

Another chance to add some more state: currently, when you mouse down on the knob it immediately moves the knob to be centered on the click location. I think that if the user clicks the knob, it shouldn't move until the mouse does. 😇

Thanks for being picky about behavior, this def feels better now. If you click the knob it doesn't jump, and if you click and drag the knob it maintains the offset from knob center (which is how it works on mac).

Here's a funny one: if I click and drag the knob, and with the mouse down move the cursor over the buttons, they highlight. I don't think this is your fault, but something to keep in mind.
@futurepaul are you happy with this as-is, or did you want to keep fiddling with styling?

Up to y'all: I was working on styling stuff in a different branch, but I can add styles to ProgressBar and Slider for this PR if you'd like!

I'm in favor of getting stuff into the tree, so would be happy to see this merged and refine styling in a followup.


Handlebars: Access has been denied to resolve the property "statements" because it is not an "own property" of its parent.

I'm running my test case in locally with following versions
@angular-devkit/architect    0.803.23
@angular-devkit/core         8.3.23
@angular-devkit/schematics   8.3.23
@schematics/angular          8.3.23
@schematics/update           0.803.23
rxjs                         6.4.0
Node: 12.14.1
handlers with the 4.5.3 versions i was getting my repost

and recently i have verified my components and i have done npm install after this i have run the coverage then is was throwing error like:
           Handlebars: Access has been denied to resolve the property "statements" because it is not an "own property" of its parent.

You can add a runtime option to disable the check or this warning:
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details
Handlebars: Access has been denied to resolve the property "branches" because it is not an "own property" of its parent.
You can add a runtime option to disable the check or this warning:
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details
Handlebars: Access has been denied to resolve the property "functions" because it is not an "own property" of its parent.
You can add a runtime option to disable the check or this warning:
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details
Handlebars: Access has been denied to resolve the property "lines" because it is not an "own property" of its parent.
You can add a runtime option to disable the check or this warning:
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details
and report was generating but it looks like:

and the latest version is 4.7.2
@wycats
@ kpdecker

I have experienced this issue today as well. If upgrading you dependencies (I think jest-scripts or something like that) try deleting and recreating your yarn.lock-file. That solved our problem today.

just try npm update istanbul-reports --depth 3 to check if it solve the issue for you.

just try npm update istanbul-reports --depth 3 to check if it solve the issue for you.

I liked this approach, but it didn't resolve my problem.  After tracing the root package, I updated it and the errors went away:
npm list
searched for the instanbul-reports module then traced the root and updated:
npm install karma-coverage-istanbul-reporter@latest

@sketchy-ota where did you install the karma-coverage-istanbul-reporter? inside istanbul-reports module?

@ashwingattani, after calling npm list in the terminal, I ran a word search in the terminal for instanbul-reports then traced the root module that depended on it, which in my case was the karma-coverage-istanbul-reporter (could be different for others possibly?).
So instead of trying to update just the dependency, I updated the whole library with '@latest', hence:
npm install karma-coverage-instanbul-reporter@latest

@sketchy-ota, thanks for the update. for me, npm deep clean and npm update istanbul-reports --depth 3 worked in the end 🖖🏽

@sketchy-ota you saved my day buddy. this is working fine ( m using Linux 16.4)


ClassCastException

surroundings
version :2.3.5
spring boot
errormessage: mappingExeption
at org.modelmapper.internal.Errors.throwMappingExceptionIfErrorsExist(Errors.java:380) ~[modelmapper-2.3.5.jar!/:?]
at org.modelmapper.internal.MappingEngineImpl.map(MappingEngineImpl.java:81) ~[modelmapper-2.3.5.jar!/:?]
at org.modelmapper.ModelMapper.mapInternal(ModelMapper.java:573) ~[modelmapper-2.3.5.jar!/:?]
at org.modelmapper.ModelMapper.map(ModelMapper.java:406) ~[modelmapper-2.3.5.jar!/:?]
Omit
This error will occasionally come out in the aws ecs environment, but it is not found in the local development environment
Can a solution be found, thank you!

https://github.com/modelmapper/modelmapper/blob/master/core/src/main/java/org/modelmapper/internal/Errors.java
In the code below, you can type out the error in Throwable and estimate the root cause.
public Errors errorMapping(Object source, Type destinationType, Throwable t) {
return addMessage(t, "Error mapping %s to %s", source, Types.toString(destinationType));
}

+1 We have run into the same exception as well. We are on 2.3.7 and on Spring Boot too. Looking at our logs it seems like this exception began shortly after the Java runtime changed to 11.0.11 from 11.0.10 in our case - we are using openjdk:11-jdk-slim. From Docker hub openjdk:11.0.11* first appeared around April 28 matching our problem time frame. It may just be a coincidence. We are trying to look into this and other factors at the moment. It is difficult to recreate - the occurrences were intermittent, it may not occur at all. When it did it affected a subset of the classes for the duration of the service. When service was restarted, if it occurred again it would affect a different subset of classes. Any ideas would help..

The JDK issue was already fixed in 11.0.13 (Not sure when it would be released).
You can choose to upgrade ModelMapper to v2.4.3 or wait for the JDK release.

Thanks !!

We are also facing same issue with version 2.3.9 and we are using openjdk11 image. As per official page, openjdk11 still has two more releases for v11.0.13. So, we are going with upgrading modelmapper version to 2.4.3.
I'll update here if it is resolved our problem.


Not working with Spark 3/Java 17/Scala 12

https://github.com/qubole/sparklens/issues/64

Need to try to run sparklens with spark 3 on java 8 and scala 11


Question: Is there a way to improve the performance?

Hi,
First of all, thank you for this great software.
I have a project running on NET48, i just notice when either encrypting or decrypting it takes about roughly 3 - 5 seconds.
by the way im using AE_AES_256_CBC_HMAC_SHA_512 class.
Just wondering is there a way to improve the processing time?
Update:
When trying to run the sample console application targeting netcoreapp3.1 its was much faster.
Thanks,
Jonathan

Hi @armory09!
You're encrypting/decrypting strings or files?
By the way, I have been wondering about increasing performance, I recently implemented a lookup table approach in hexadecimal conversions that is much faster than the previous one, I will also implement soon some directives to use Span instead of byte[ ] when running on .NET Standard> = 2.1 | .NET Core> = 3.0.
If you want to submit a PR I will be happy to analyse it.

When encrypting files, disabling the boolean flag "appendEncryptionDataToOutputFile" and store the required info for future decryption can improve performance a bit.

Hi,
Actually i was encrypting/decrypting a string.
Thanks
On Tue, Aug 18, 2020, 10:09 PM alecgn<EMAIL_ADDRESS>wrote:

When encrypting files, disabling the boolean flag
"appendEncryptionDataToOutputFile" and store the required info for future
decryption can improve performance a bit.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alecgn/crypthash-net/issues/19#issuecomment-675500805,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABOUVG7DD4LCK4VWK2UAMHLSBKDQ5ANCNFSM4QBV6FAA
.


Specify seed in prisma schema rather than in package.json to support multiple Prisma clients

Problem
My project is a monorepo of multiple services with multiple Prisma schemas. Utilizing the Nx workspace generator I create multiple Prisma clients, one for each service, each connecting to their own database. The DB url is overwritten programmatically via the PrismaClient object. Everything in my monorepo works fine, I can generate multiple clients all at once as well as migrate for each schema. However currently it seems Prisma offers no way of specifying multiple seed files, or programmatically specify what seed file to execute.  The docs say to specify the seed file via a singular "seed" key in package.json like this :
"prisma": {
  "seed": "ts-node prisma/seed.ts"
}

This offers no way of specifying a seed file for multiple prisma clients.
Suggested solution
Rather than specifying the seed filepath in package.json, add a "seed" field in the prisma schema under datasource like this :
datasource db {
  provider = "sqlite"
  url      = env("DATABASE_URL")
  seed  = "ts-node prisma/seed.ts"
}

Is there a way to run prisma db seed with a specific seed file? really need this to tackle a problem.

Please open a new issue or discussion instead of commenting in all the "seed" related issue @Jarrodsz. Thanks.


bug: Program listing generated is missing the end of program

Version
1.12.0
Describe the bug
I asked Cody to write a program to parse an expression in QB64 BASIC but it doesn't supply the entire program.  It stops before ending.
I asked:
why are you not finishing the entire program?
It responds:
You're absolutely right, I should have provided the complete program without stopping midway. Here's the full code without any functions to evaluate the given expression:
Here's the code it produces..
DEFINT A-Z
DIM expr$, c$, i%, value%, j%, temp%, k%, op%
expr$ = "45-3((((15-3)2)+2)+51-6(22+1))*22"
PRINT "Expression: " + expr$
i = 0
value% = 0
op% = 0 ' 0 for addition/subtraction, 1 for multiplication/division
DO WHILE i <= LEN(expr$)
c$ = MID$(expr$, i + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
IF op% = 0 THEN
value% = value% * 10 + VAL(c$)
ELSE
temp% = temp% * 10 + VAL(c$)
END IF
i = i + 1
ELSEIF c$ = "(" THEN
i = i + 1
temp% = 0
DO
j% = i
DO WHILE j% <= LEN(expr$)
c$ = MID$(expr$, j% + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
temp% = temp% * 10 + VAL(c$)
j% = j% + 1
ELSEIF c$ = "(" THEN
j% = j% + 1
DO
k% = j%
DO WHILE k% <= LEN(expr$)
c$ = MID$(expr$, k% + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
temp% = temp% * 10 + VAL(c$)
k% = k% + 1
ELSEIF c$ = ")" THEN
EXIT DO
END IF
LOOP
j% = k%
LOOP UNTIL c$ = ")"
ELSEIF c$ = "+" THEN
j% = j% + 1
DO WHILE j% <= LEN(expr$)
c$ = MID$(expr$, j% + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
temp% = temp% + VAL(c$)
j% = j% + 1
ELSE
EXIT DO
END IF
LOOP
ELSEIF c$ = "-" THEN
j% = j% + 1
DO WHILE j% <= LEN(expr$)
c$ = MID$(expr$, j% + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
temp% = temp% - VAL(c$)
j% = j% + 1
ELSE
EXIT DO
END IF
LOOP
ELSEIF c$ = "*" THEN
op% = 1
j% = j% + 1
DO WHILE j% <= LEN(expr$)
c$ = MID$(expr$, j% + 1, 1)
IF c$ >= "0" AND c$ <= "9" THEN
temp% = temp% * VAL(c$)
j% = j% + 1
ELSE
EXIT DO
END IF
LOOP
ELSEIF c$ = "/" THEN
op% = 1
j% = j% + 1
DO WHILE j% <= LEN(expr$)
c$ = MID$(expr$, j% + 1, 1)
IF c$ >= "0" AND c$ <= "
Expected behavior
It should produce the entire program, I asked it repeatedly but it just keep generating the same code then stops before it completes.
Additional context
No response

Related to https://github.com/sourcegraph/cody/issues/3648

Thanks for reporting! We have increased Cody's output limit, it should now be much rarer to see Cody truncating the response like this. Let us know if you encounter any more issues!
This change will be available in this weeks Cody release, which is scheduled to go out either today or tomorrow.


Bind cannot find required view in some circumstances in Android 8.0

I've been using butterknife for a while now without much issue, but recently I've encountered a frankly bizarre error that I haven't been able to find anything on elsewhere.  I'm seeing a sudden upswing in crashes caused by 'required view with ID X was not found' exceptions.
In and of itself, that's no big deal, but the strangeness comes in that the view definitively exists in the view hierarchy.  It's a sporadic issue that only occurs occasionally, and only on 8.0 devices.
The context here is that I have a parent Activity class with shared functionality and UI elements, which overrides the setContentView method and inserts whatever layout the child Activity attempts to use into the appropriate portion of the shared layout, like so:
@Override
public void setContentView(int child_layout){
    LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View roott = inflater.inflate(R.layout.base_activity, null, false);
    inflater.inflate(child_layout, (FrameLayout) root.findViewById(R.id.container), true);
    super.setContentView(root);
    ButterKnife.bind(this);
}

It's crashing on the bind here, attempting to find one of the elements of the base_activity layout, which is not present in child_layout.
I am using ButterKnife 8.8.1, and it works fine for all other versions of Android and, most of the time, for Android 8.0 as well.  Is there anything that can be done to resolve this?

I am having a similar issue, however this effects me only on android tablets, and doesn't matter on which android version

I have the same issue for version 10.1.0

I have the same issue on android tablets too


Analyzer GET_NAVIGATION_INVALID_FILE: Error during analysis.getNavigation

I get lots of

2017-04-10 11:10:31,516 [1282916]   INFO - yzer.DartAnalysisServerService - Error from analysis_getNavigation(), file = /app_code_generator.dart, SDK version = 1.24.0-edge.021d99e05deae069352f5b8d2c00f1ef0b1f00f3, server version = 1.18.0, error code = GET_NAVIGATION_INVALID_FILE: Error during analysis.getNavigation: invalid file.

and the Analyzer then somehow silently stops working and no Analyzer view becomes available in IDEA
I had to go back to

Dart VM version: 1.24.0-edge.9f10c4898cf6906e0ea341b15da9c285a161c318 (Thu Apr  6 22:05:46 2017) on "linux_x64"

to make it work again

GET_NAVIGATION_INVALID_FILE is usually not related to the SDK version or not working analysis. It's just an info message that usually causes no problems. /app_code_generator.dart path looks incorrect indeed. Not sure why IDE tries to ask for the navigation info for it. What is the real location of app_code_generator.dart file?

lib/app_code_generator/app_code_generator.dart

May I take a look at the whole log file(s)?

idea.zip

Did you have app_code_generator.dart file open when those GET_NAVIGATION_INVALID_FILE were being printed? Do you know how to reproduce so many lines in log? IMO it shouldn't depend on SDK version.

I wasn't able to get analysis results in IDEA until I reverted to the mentioned Dart version. I tried one or two versions in between which didn't solve the issue either.
I don't know how to reproduce.
I just tried to get IDEA to show analysis results (after upgrading Dart, pub upgrade and adding the newest linter rules from the last linter version).

I guess server instrumentation logs will help.

How do I get them?

Find Action (Ctrl+Shift+A), type 'Registry', open it, set --instrumentation-log-file=/some/path/to/log.txt as a value of the dart.server.additional.arguments property, restart Analysis Server.

I now get the error with the correct path in the log
The only difference I'm aware of is, that I currently don't have any other IDEA projects opened (I had when I originally reported the issue).
All I did after starting the IDE and opening the project.
The analyzer starts analyzing and then dies shortly afterwards.
idea.zip

It seems I used an analyzer snapshot with the angular_analyzer_plugin applied.
I started again with a fresh install and now I got this behavior only after installing the angular_analyzer_plugin.

Ok, so not an IDE issue :).
Note that if you decide to attach server instrumentation logs here or in any other issue - logs may contain sources of the files that you edit. So if you do not want to make them public you may send logs to those who are interested directly.

@MichaelRFairhurst

Hmm, we don't do any navigation. We don't even load a server plugin.
Could it be related to the fact that we report errors for html? Then causes DAS to look for navigation in that html?

What html file? (I thought the issue was caused by trying to get navigation in app_code_generator.dart.)

Ah, didn't see the filename.
@zoechi what version was your analyzer before you installed the plugin?

The version included in the Dart version mentioned in the initial post.
I tried to reproduce today, but wasn't able to.
I will investigate further and post an update when I find out more.

This is the issue I'm currently struggling with #29322

I haven't seen this in a while. I'll reopen when I run into it again.


DT-24458: Update the list of maintainers

DT-24458

Add myself as a maintainer of this repo.

Security Insights
No security relevant content was detected by automated scans.
Action Items

Review PR for security impact; comment "security review required" if needed or unsure
Verify aviary.yaml coverage of security relevant code

Questions or Comments? Reach out on Slack: #support-infosec.

QA +1


[REVIEW] Slurm containerized setup

This PR:

Includes a variety of configuration and setup for running in containers with Slurm
Makes some small tweaks to the load_test script
Adds a wait.py, which can be used in a multi-node setup to ensure the client process on the scheduler node doesn't begin until all dask workers have attached to the cluster
Updates the default UNIX permissions of a large number of files

This should be ready for review @ayushdg @VibhuJawa

Made one small update to switch the load test chunk size back to 128 MiB from 1 GB, to ease running on more constrained systems.


fix: when copy fails do not emit event

What kind of change does this PR introduce?
Bug fix
What is the new behavior?
When the copy command fails because an asset already exists or you don't have permission, we won't send a queue event.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>7
Details

14 of 22 (63.64%)  changed or added relevant lines in 1 file are covered.
10 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.05%) to 79.538%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/storage/object.ts
14
22
63.64%

Files with Coverage Reduction
New Missed Lines
%

src/storage/object.ts
10
89.85%

Totals

Change from base Build<PHONE_NUMBER>1:
-0.05%

Covered Lines:
13192

Relevant Lines:
16427

💛  - Coveralls


Tutorial notebooks clustering

Reference Issues/PRs

What does this implement/fix? Explain your changes.
Adds tutorial notebook for all of the clustering functions
Any other comments?

Not sure why there are errors on files I did not change @bdpedigo @j1c

Codecov Report

Merging #350 into master will decrease coverage by 0.33%.
The diff coverage is 59.25%.

@@            Coverage Diff             @@
##           master     #350      +/-   ##
==========================================
- Coverage   88.42%   88.08%   -0.34%
==========================================
  Files          40       41       +1
  Lines        2608     2635      +27
==========================================
+ Hits         2306     2321      +15
- Misses        302      314      +12

Impacted Files
Coverage Δ

graspy/simulations/rdpg_corr.py
57.69% <57.69%> (ø)

graspy/simulations/__init__.py
100.00% <100.00%> (ø)

graspy/simulations/simulations.py
96.10% <0.00%> (-0.39%)
:arrow_down:

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 4463cc8...76e008d. Read the comment docs.

@caseypw there are no errors in other files, those are just warnings. the error is

11:50:46 PM: NoSuchKernel in tutorials/clustering/Cluster.ipynb:
11:50:46 PM: No such kernel named python37664bit685ec07b3663401c8f9febe9ed77e09a

somehow you changed the kernelspec of the notebook you added. need to update here
https://github.com/neurodata/graspy/blob/76e008d04b8b0fe9f3e7f87b7a01f6f4274808bb/docs/tutorials/clustering/Cluster.ipynb#L244

@caseypw there are no errors in other files, those are just warnings. the error is

11:50:46 PM: NoSuchKernel in tutorials/clustering/Cluster.ipynb:
11:50:46 PM: No such kernel named python37664bit685ec07b3663401c8f9febe9ed77e09a

somehow you changed the kernelspec of the notebook you added. need to update here
https://github.com/neurodata/graspy/blob/76e008d04b8b0fe9f3e7f87b7a01f6f4274808bb/docs/tutorials/clustering/Cluster.ipynb#L244

@caseypw don't believe this was ever addressed so the documentation is not building. if we want to merge this, need to clear the custom kernelspec in your notebook

also, note that the notebook needs to be empty (no cells have been run). And at a glance, looks like you are pulling in synthetic data from a file. a tutorial like this should just sample the data in the notebook.
@caseypw closing this for now since hasn't been activity on it, but willing to reopen if you're interested in making these fixes


Please document how to get started with .NET Core

As discussed in this issue. It looks like the current steps are:

Install the (unofficial as of 3.6) MonoGame template:

dotnet new --install MonoGame.Template.CSharp

# in directory where you want to create the project
dotnet new mgdesktopgl
dotnet run

Install the NuGet package SadConsole.Standard

Profit

Finished. We're testing it but I ran through it and didn't have a problem 😄
http://sadconsole.com/docs/getting-started-sadconsole-core-standard.html


support upgrade from the local web server?

Does it support upgrading main.bin from the local web server, because I can't get the file through github. I built a local web server using nginx.

Or to build a firmware that can be used directly, only need to flash it through ttl, don't need to use github to upgrade it.

What's your issue with GitHub?

I have given up my idea. thank you for your reply.


fix(angular-query): type narrowing on query and mutation results

This PR contains the resolution for the tests provided in #6634 and should fix the issues raised in #6635.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (1317aa5) 41.71% compared to head (7a0bfdf) 81.25%.
Report is 1 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main    #6662       +/-   ##
===========================================
+ Coverage   41.71%   81.25%   +39.53%
===========================================
  Files         179       13      -166
  Lines        7007      144     -6863
  Branches     1416       21     -1395
===========================================
- Hits         2923      117     -2806
+ Misses       3713       27     -3686
+ Partials      371        0      -371

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


Increase parallelism when using  clang-build.ps1 with -parallel switch

Thank you again for your great work! I have started to use your build script clang-build.ps1 on our build servers, too.
I have discovered, that using the -parallel switch the projects were built in sequence and only the source files were built in parallel. This is fine for projects with many files. My projects often do not contain as many files as the build server has cores, so parallelization is not that good.
Is it possible to increase parallelism by building projects in parallel as well?
Maybe using powershell workflows and parallel foreach would be a possible solution.

Hi,
Interesting suggestion.
We thought about it a few months back, but didn't pursue it then...
I seem to remember some issues we identified with this workflow (at least in our codebase) , but I can't seem to remember them, now 🤔
Maybe we should reconsider it.

Hello,
Sadly, this is a limitation of the current way we do parallelism (at file level).
We've looked into building projects in parallel and it is poses a number of challenges:

grabbing execution log in a synchronous manner from asynchronous project workers.
workflows/parallel-foreach impose restrictions to PS code that are not really compatible with the way ClangPowerTools' clang-build.ps1 is built.

We've been able to avoid these problems with the file parallelism approach by keeping things as serial as possible. The parallel worker jobs are launched at the latest possible time, when everything has been computed and all that's left to do is call clang++/clang-tidy.
This cannot be done at project-level because every project needs to compute its own settings, flags, etc.
Sadly we don't currently have the time for developing this.
Outside help would be much appreciated.
Regards,
Gabriel


IRGen: switch to absolute pointers for nomimal type descriptors

Alter the value metadata layout to use an absolute pointer for the
nominal type descriptor rather than a relative offset relative to the
complete type metadata.  Although this is slightly less efficient in
terms of load times, this is more portable across different
environments.  For example, PE/COFF does not provide a cross-section
relative offset relocation.  Other platform ports are unable to provide
a 64-bit relative offset encoding.
Given that the value witness table reference in the value metadata is
currently an absolute pointer, this page is most likely going to be
dirtied by the loader.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - eee61092e66ca0382f01f084b367d4de46e8a9a6

Build failed
Swift Test Linux Platform
Git Sha - eee61092e66ca0382f01f084b367d4de46e8a9a6

@swift-ci please clean test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - eee61092e66ca0382f01f084b367d4de46e8a9a6

@swift-ci please clean test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - eee61092e66ca0382f01f084b367d4de46e8a9a6

Okay, there are 2 test failures that are left (IRGen).  I have local fixes for those.  The lit pattern was matching the old layout.  Ill be able to upload that soon.  I think that the runtime and compiler changes are complete though.  Im able to pass a full test run locally now.

@swift-ci please clean test

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - 40bc79ba2d4849eb124dfb74d8ce5b187407c478

@swift-ci please test

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 1e79b23be50fc233b2c409ebdf2b11b11590963c

Build failed
Swift Test OS X Platform
Git Sha - 1e79b23be50fc233b2c409ebdf2b11b11590963c

Can't seem to identify the linux failure.  The macOS failures are due to the ObjC tests not running on Linux ... I should just fix that.

@swift-ci please test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - 1e79b23be50fc233b2c409ebdf2b11b11590963c

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 1e79b23be50fc233b2c409ebdf2b11b11590963c

Build failed
Swift Test OS X Platform
Git Sha - 1e79b23be50fc233b2c409ebdf2b11b11590963c

@swift-ci please clean test Linux platform

ping @jckarter @rjmccall

This PR broke LLDB tests on OS X (see: https://ci.swift.org/job/oss-lldb-incremental-osx/).
@compnerd we really need to get this fixed today or we need to back out this PR.

@compnerd nvm, just noticed PR-12291.


[Bug]: Maven sign and upload should be done inside a docker container

Describe the bug
We should be using a docker container to run jenkinsjob.
https://github.com/opensearch-project/opensearch-infra/blob/main/jenkins/jobs/OpenSearch_CI/release_ci/opensearch_maven_release/Jenkinsfile#L3-L5
Also, should this file be a part of opensearch-build?
To reproduce
Docker container is not used -
https://github.com/opensearch-project/opensearch-infra/blob/main/jenkins/jobs/OpenSearch_CI/release_ci/opensearch_maven_release/Jenkinsfile#L3-L5
Expected behavior
No response
Screenshots
If applicable, add screenshots to help explain your problem.
Host / Environment
No response
Additional context
No response
Relevant log output
No response

[Triage] Move this to product backlog.

We decide to move the maven workflow to our build repo since this could use the libraries in build repo and promote our public visibility.
Also this job will require proper testing and some re-design on the signing part.


HOTFIX: remove job id prefix from internal topic.

@ymatsuda @miguno for reviews. We need to re-package it unfortunately..

streams tests pass in this hotfix branch
http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2016-03-09--001.1457493713--guozhangwang--KTopicPrefix--0310985/report.html
http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2016-03-09--001.1457494507--guozhangwang--KTopicPrefix--0310985/report.html

LGTM.


Update test.yml

Codecov Report

Merging #60 (67c410b) into master (b1527dd) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 67c410b differs from pull request most recent head e03c911. Consider uploading reports for the commit e03c911 to get more accurate results

@@           Coverage Diff           @@
##           master      #60   +/-   ##
=======================================
  Coverage   86.94%   86.94%
=======================================
  Files          14       14
  Lines        1815     1815
=======================================
  Hits         1578     1578
  Misses        237      237

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 b1527dd...e03c911. Read the comment docs.


Modify design and position of the audio player

@mariobehling @aayusharora @championswimmer Your views ?

Please propose what you think.

For design : Something like http://codepen.io/katzkode/pen/Kfgix can be used which looks elegant and simple, and about the position of the audio player.
For position: instead of putting the audio player on the blue card ( with session heading and small description etc ), we can have a tag or a symbol on the card that indicates that audio is available for that specific card, but audio can only be accessed after expanding the card ( in a way similar to current implementation in schedules page ) .
Please give you suggestions on this implementation..

For design

Ok, give me a few days to test it, please.

For position

Yes, very good idea. Let's do it like that and then test it a while. Sounds like this is the way to go for me.


Expose MenuItem

I know this feature has been requested a couple of times, but if it's not that difficult, I don't see the reason why not. The features we can add to this great library include:

adding badges to the menu items (something many apps are currently already doing with their persistent search bars
changing icons programmatically
using a showcase view on top of each item
manually disabling/hiding items programmatically (without re-inflating)

These don't have to be included in the library since a library should aim to be as abstract and transparent as possible as yours is, but exposing the MenuItems would benefit us a lot.
Unfortunately the badge feature is a necessity for my app so I can't use this library

@arimorty can you promiss me that this please


(PUP-7273) Improve hiera function error message when path is missing

Before this commit, a missing path declaration in hiera.yaml resulted in
an error explaing that the options hash sent to a data_hash function that
required a path had an incorrect size (0 instead of 1). While correct,
that message was not very informative. This commit leverages the new
argument_mismatch dispatcher added by PUP-7368 to generate more useful
errors when the path is missing.

CLA signed by all contributors.


config file for each theme

How to create and access config file for each theme?

Config's theme ? You put config file in your theme ? Currently, there is no way to support config's themes. Maybe I would add this feature for next release. Thanks!

Thanks!


Missing RTL support

Describe the bug
When changing language to Arabic or any RTL language the text overlaps with button.
To Reproduce
Steps to reproduce the behavior:

Set language to Arabic
Toggle the switch
The text in the toggle will overflow with button.

Expected behavior
It should follow RTL layout.
Screenshots

Smartphone (please complete the following information):

Device: [OnePlus 6T]
OS: [Android 11]

Additional context

In LTR everything looks fine.

I need this too -- the drawing direction should be switched if:
Directionality.of(context) == TextDirection.rtl


fix: Add missing element to schema (#19)

This contained the preContent section, but the postContent section was missing.
Fixes #19

Codecov Report

Merging #20 (85783f1) into main (75f3271) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #20   +/-   ##
=======================================
  Coverage   99.35%   99.35%
=======================================
  Files           5        5
  Lines         154      154
  Branches       48       48
=======================================
  Hits          153      153
  Misses          1        1

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 75f3271...85783f1. Read the comment docs.

Good catch! totally missed this one
Thanks Gary ❤


Improve bloom docs

Is your feature request related to a problem? Please describe.
The bloom effect seems like it is not working when used with the default parameters.
Describe the solution you'd like
The docs should convey how to use the bloom effect so it is visible in the scene.

@Tinoooo agree, more than improve the docs, why don't we improve the DX and add some defaults so it's at least visible?

@Tinoooo agree, more than improve the docs, why don't we improve the DX and add some defaults so it's at least visible?
I'm not sure about this. One the one hand it adds DX on the other we stray away from the effect defaults.

will be fixed in #123


Custom 404 page and handled psycopg2 binary

I created the 404 error page for Xpense and created a new file with all th modules need when psycopg2 doesn't work

Alright, that's very necessary.  I'd continue with this format


Add option for Azure cross subscription backups

Closes #1646

Thanks for this @boxcee! I'll review and do some testing this week.

@skriss For testing, is there anything I should document? We have an Azure account and I will test this today.

@boxcee just some quick notes on exactly what scenario/steps you tested would be great - don't need anything long, just enough to get the idea. thanks!

Soooo, I did test this and it does work. However, I am not really sure what value it adds as the snapshots cannot be stored in another subscription. That is at least as far as I got.
I wanted to test this by creating a cluster, creating a backup, deleting the cluster, creating another cluster and then restore the backup to that cluster. Turns out, when I deleted the cluster I also deleted all the snapshots. When I then tried to restore, the snapshots could not be found.

hey @boxcee, how do you test this succesfully?
When I build you're branch (boxcee:allow-cross-subscription-backups) and then run velero install
I get the following error
An error occurred: some backup storage locations are invalid: error getting backup store for location "default": rpc error: code = Unknown desc = config has invalid keys [subscriptionId]; valid keys are [resourceGroup storageAccount bucket prefix]
This is the command I've ran
velero install --provider azure --bucket $BLOB_CONTAINER --secret-file ./credentials-velero --backup-location-config resourceGroup=$rg,storageAccount=$storage,subscriptionId=$subId --snapshot-location-config apiTimeout=10000,resourceGroup=$rg,subscriptionId=$subId

@jweldonca I assume this error shows up in the controller?
By default the Makefile creates a new container when run with all-containers. I changed the repository to point to our company repository and docker pushed the images there.
Then I also modified the deployment (after installing with velero install) to point to the company repo.
Your problem is basically that you have built a new velero binary, but the images being deployed are still the master images.

@skriss Can confirm it does work cross-subscription now!

Created a cluster in subscription A and configured it to create snapshots and backups in subscription B.
Used the example nginx-app to create a backup.
Deleted the cluster in subscription A.
Re-created a cluster in subscription A and configured it as before to use subscription B for snapshots and backups.
Then I ran the restore command from the example.
Success!

👍 I didn't realize that cross-subscription volume snapshots were even possible - sounds great! I'll take another look at the code shortly.


bug: React Router 5.0 breaks with "You should not use  or withRouter() outside a "

Bug Report
Ionic version:

[x] 4.x (master: 292b24ad8f8ab5f0e1410586fd9af9566cc0af18)
Current behavior:

Use react-router and react-router-dom version ^5.0.0 and the following error will be thrown:

Expected behavior:

Steps to reproduce:

Clone the react conference app
npm install<EMAIL_ADDRESS><EMAIL_ADDRESS>npm link @ionic/react
npm start

upcoming react beta release has been updated to react router > 5.0.0 and should resolve this issue


add installation examples for operator

Maybe remove the comments at the top of each file since they are related to the operator repo, but otherwise looks good to me. We should merge this once the operator PR is merged upstream.


Lab 9 starts with already done things

Lab/Demo: 9
There are redundant instructions in Lab 9.

Exercise 1 can't be completed since these have been already completed in Lab 1
Exercise 2 instructs to import older version of the solution into Dev One -environment, which haven't been used in previous labs and frankly doesn's make sense not to continue with the previously created and developed environment
Exercise 3 also is redundant, since there already is data in the other Development environment.

I suggest that the instructions should be changed towards using the previously developed solution inside the other development environment.

Lab 9 is designed to run in cloud slice in a separate lab.
These exercises are required as the environment in the lab is empty

Virtual machine used in labs is not empty though, so exercise 1 is useless... It doesn't make sense to me to not use what was already done previously, using Dev One as environment for this seems weird and not serving any purpose for learning.

Which ALH?

Labs were split due to loss of Azure Passes. With cloud slice, you cannot save the lab. On Skillablle the labs are split, you use the first ALH lab for labs 1-8, it does not have Azure and can be saved. and the second ALH for the final lab where there is Power Platform and Azure provided,

For GoDeploy there's only one machine. Makes sense when there's multiple for sure. Maybe a note could be added to address this?

Is goodeploy still using Azure Passes?
Or is there Azure available in all labs?

Is godeploy still using Azure Passes?
Or is there Azure available in all labs?

Another MCT has reported to me today with Skillable that they had to perform Exercises 1-3

Interesting... No, Godeploy no more uses passes

https://techcommunity.microsoft.com/blog/mctnews/azure-pass-has-been-retired/4255333


Update Jekyll to 3.8.4

Due to a security vulnerability:
https://nvd.nist.gov/vuln/detail/CVE-2018-17567

Deploy preview for openbuildservice ready!
Built with commit 71ab0687e85a70fee31e5eac91c00674b13cd35e
https://deploy-preview-205--openbuildservice.netlify.com

This should be done too in obs-patterns

@dmarcoux

The Docker Compose setup has to be updated too:

Do we have a docker for this? really? why? :unamused: And the docker is wrong... it should be using the Gemfile, otherwise it is missing the emojis gem and any other gem we install. I would suggest to merge this and to solve/drop docker in another PR.

The Docker Compose setup is nice to test the changes locally. We should add a Dockerfile with steps to install the missing gems.

I can take care of it in another PR. For now, only updating the version is fine.

@dmarcoux

I can take care of it in another PR. For now, only updating the version is fine.

That would be nice. Just because the docker problem is related to being ignoring the Gemfile and not really with the update. The same happens in obs-patterns BTW

I created the issue: https://github.com/openSUSE/obs-landing/issues/206

@dmarcoux and I created this one: https://github.com/openSUSE/obs-patterns/issues/35 BTW, this is not a fix, it is a broken. The docker has not the correct setup. You won't see the same page as you see in production.

@dmarcoux can we merge this then? :confused:


chore(deps): :arrow_up: update all non-major dev dependencies

This PR contains the following updates:

Package
Change
Age
Adoption
Passing
Confidence

@types/chai (source)
4.3.6 -> 4.3.7

@types/node (source)
18.18.3 -> 18.18.4

@types/three (source)
0.156.0 -> 0.157.0

assemblyscript (source)
0.27.11 -> 0.27.13

aws-cdk-lib
^2.99.1 -> ^2.100.0

aws-sdk
2.1471.0 -> 2.1472.0

eslint (source)
8.50.0 -> 8.51.0

eslint-plugin-storybook
0.6.14 -> 0.6.15

postcss-preset-env (source)
9.1.4 -> 9.2.0

Release Notes

AssemblyScript/assemblyscript (assemblyscript)
v0.27.13
Compare Source
Bug fixes

introduce CallableFunction and NewableFunction from typescript/lib/lib.es5.d.ts (#2712) (c22c078)
Co-authored-by: Xinquan XU<EMAIL_ADDRESS>
v0.27.12
Compare Source
Bug fixes

rest parameter crash resolver (#2748) (e3e4166)
Fixes #2707

aws/aws-cdk (aws-cdk-lib)
v2.100.0
Compare Source
Features

aws-cdk-lib: reduce JavaScript load time, second attempt (#27362) (0bb49b4), closes #27314 #27353
cdk: add AppSync GraphQLSchema and pipeline resolvers as hot swappable (#27197) (0ea6313), closes #2659 #24112 #24113
cli: CDK Migrate CLI command (#27325) (db051ea)
cli: declare cdk import stable (#27390) (1057ef0)
eks: support INF2 instance types (#27373) (bed9b8d)
s3-deployment: support Fn::Select in renderData() (#27237) (8b20c11), closes #25504 /github.com/aws/aws-cdk/blob/3edd2400bc0c8a86366a29d3a7eef1ef4fa5e016/packages/aws-cdk-lib/aws-elasticloadbalancingv2/lib/alb/application-target-group.ts#L438
synthetics: CloudWatch Synthetics NodeJS Pupeteer 6.0 Runtime with NodeJS 18 (#27339) (e48af04), closes #27337
update AWS Service Spec (#27375) (26d4afe)
rds: add new RDS versions (#27351) (e0c9792)

Bug Fixes

autoscaling: ssmSessionPermissions does not add managed policy to role specified in launch template (#27220) (20e4760), closes #25904
cdk: Resolve cross stack and default parameters for hotswaps (#27195) (3507141), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-cloudformation.html#w2ab1c17c23c19b5
cli: report errors from resource failures in nested stacks (#27318) (1f639c7)
custom-resources: IAM policy incorrect for SDKv3 names (#27313) (c68ea44), closes #27255 #27268 #27270 #27395
logs: remove invalid data protection data identifier (#27388) (4db166d)
s3: bucket deletion fails if object creation races against cleanup (#26875) (735b786), closes #26874
sns-subscriptions: cannot add SqsSubscription when using an Sqs Construct from a different Constructs library (#27227) (52eee85), closes #27225
stepfunctions: Escaping newline characters in Step Functions intrinsics caused schema validation failures (#27323) (4e96edd)
reduce load time of JavaScript library, for real (#27314) (48acd37)

Alpha modules (2.100.0-alpha.0)
⚠ BREAKING CHANGES TO EXPERIMENTAL FEATURES

redshift: the behavior of redshift tables has changed. UPDATE action will not be triggered on new table names and instead be triggered on table id changes.

Bug Fixes

redshift: UserTablePriviliges to track changes using table IDs (#26955) (7e4fdc7), closes #26558

aws/aws-sdk-js (aws-sdk)
v2.1472.0
Compare Source

feature: EC2: Documentation updates for Elastic Compute Cloud (EC2).
feature: FSx: After performing steps to repair the Active Directory configuration of a file system, use this action to initiate the process of attempting to recover to the file system.
feature: MarketplaceCatalog: This release adds support for Document type as an alternative for stringified JSON for StartChangeSet, DescribeChangeSet and DescribeEntity APIs
feature: QuickSight: NullOption in FilterListConfiguration; Dataset schema/table max length increased; Support total placement for pivot table visual; Lenient mode relaxes the validation to create resources with definition; Data sources can be added to folders; Redshift data sources support IAM Role-based authentication
feature: Transfer: This release updates the max character limit of PreAuthenticationLoginBanner and PostAuthenticationLoginBanner to 4096 characters

eslint/eslint (eslint)
v8.51.0
Compare Source
Features

0a9c433 feat: Add --no-warn-ignored CLI option for flat config (#17569) (Domantas Petrauskas)
977e67e feat: logical-assignment-operators to report expressions with 3 operands (#17600) (Yosuke Ota)

Bug Fixes

f976b2f fix: make rule severity case-sensitive in flat config (#17619) (Milos Djermanovic)
0edfe36 fix: Ensure crash error messages are not duplicated (#17584) (Nicholas C. Zakas)
dd79abc fix: eslint-disable to be able to parse quoted rule names (#17612) (Yosuke Ota)
d2f6801 fix: Ensure correct code path for && followed by ?? (#17618) (Nicholas C. Zakas)

Documentation

ee5be81 docs: default to sourceType: "module" in rule examples (#17615) (Francesco Trotta)
1aa26df docs: Add more examples for multiline-ternary (#17610) (George Ashiotis)
47d0b44 docs: Update README (GitHub Actions Bot)
dbf831e docs: use generated og image (#17601) (Percy Ma)
1866da5 docs: Update README (GitHub Actions Bot)

Chores

1ef39ea chore: upgrade<EMAIL_ADDRESS>(#17624) (Milos Djermanovic)
f8c7403 chore: package.json update for @eslint/js release (ESLint Jenkins)
2665552 test: fix flat config linter tests to use Linter in flat config mode (#17616) (Milos Djermanovic)
7b77bcc chore: Refactor CodePathState (#17510) (Nicholas C. Zakas)
bc77c9a chore: Document and refactor ForkContext (#17566) (Nicholas C. Zakas)
24e1f14 chore: Refactor and document CodePath (#17558) (Nicholas C. Zakas)

storybookjs/eslint-plugin-storybook (eslint-plugin-storybook)
v0.6.15
Compare Source
🐛 Bug Fix

no-uninstalled-addons: support satisfies operator and default reexport #139 (@hjoelh)

Authors: 1

Joel (@hjoelh)

csstools/postcss-plugins (postcss-preset-env)
v9.2.0
Compare Source
October 9, 2023

Added @csstools/postcss-gamut-mapping Check the plugin README for usage details.
Updated cssdb to 7.8.0 (patch)
Updated @csstools/postcss-color-function to 3.0.7 (patch)
Updated @csstools/postcss-color-mix-function to 2.0.7 (patch)
Updated @csstools/postcss-exponential-functions to 1.0.1 (patch)
Updated @csstools/postcss-gradients-interpolation-method to 4.0.7 (patch)
Updated @csstools/postcss-hwb-function to 3.0.6 (patch)
Updated @csstools/postcss-ic-unit to 3.0.2 (patch)
Updated @csstools/postcss-is-pseudo-class to 4.0.3 (patch)
Updated @csstools/postcss-logical-viewport-units to 2.0.3 (patch)
Updated @csstools/postcss-media-minmax to 1.1.0 (minor)
Updated @csstools/postcss-media-queries-aspect-ratio-number-values to 2.0.3 (patch)
Updated @csstools/postcss-oklab-function to 3.0.7 (patch)
Updated @csstools/postcss-progressive-custom-properties to 3.0.2 (patch)
Updated @csstools/postcss-relative-color-syntax to 2.0.7 (patch)
Updated @csstools/postcss-stepped-value-functions to 3.0.2 (patch)
Updated @csstools/postcss-trigonometric-functions to 3.0.2 (patch)
Updated postcss-color-functional-notation to 6.0.2 (patch)
Updated postcss-custom-media to 10.0.2 (patch)
Updated postcss-custom-properties to 13.3.2 (patch)
Updated postcss-custom-selectors to 7.1.6 (patch)
Updated postcss-double-position-gradients to 5.0.2 (patch)
Updated postcss-lab-function to 6.0.7 (patch)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

⚠ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

any of the package files in this branch needs updating, or
the branch becomes conflicted, or
you click the rebase/retry checkbox if found above, or
you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:
File name: package-lock.json
npm WARN cli npm v10.2.0 does not support Node.js v20.2.0. This version of npm supports the following node versions: `^18.17.0 || >=20.5.0`. You can find the latest version at https://nodejs.org/.
npm ERR! code ERR_SOCKET_CONNECTION_TIMEOUT
npm ERR! errno ERR_SOCKET_CONNECTION_TIMEOUT
npm ERR! request to https://registry.npmjs.org/tsconfig-paths-webpack-plugin failed, reason: Socket connection timeout

npm ERR! A complete log of this run can be found in: /tmp/renovate/cache/others/npm/_logs/2023-10-14T01_23_55_359Z-debug-0.log


[Algorithm] Euclidean GCD [Python]

This adds the Euclidean algorithm for computing the greatest common
divisor (GCD) of two natural numbers, the largest number that divides
both of them without leaving a remainder.
Closes https://github.com/fnplus/interview-techdev-guide/issues/142

Thanks  for contributing.