upgrade (timeframe) plugin seems to skip downloading on some episodes.

I had the same thought after reading the other guy's ticket but I don't know how I would verify.
If I force run the task from CLI it seems to "catch up" and download everything that would have normally expired and downloaded automatically.
I'm unsure how to diagnose this...

I think the best solution is to add this task to your 'schedules' this way it can consider whether the timeframe has passed and correctly get any of the backup entries it's been saving in backlog. You are probably going to get warnings about not having an input plugin, and not having any entries in the task. We should figure out how to handle this case in the future, but for now you could add the following to the task just to suppress the warnings:
no_entries_ok: yes
mock: []

Dude, this has been driving me insane for over a month. I'm almost certain it used to work, but looking back I don't actually know.
Just the fact that someone else has acknowledged this is fantastic news to me.
I'll schedule the task, hopefully this takes care of the ones that are "missed" this way.

Also think I'm having some issues that may be related to this.
Have similar behaviour, except the wrong quality is downloaded after the timeframe expires.
config snippet (full config)
  tv-settings:     <<: *tv_lookup     content_size:       max: 10000       min: 200     sequence:       - configure_series:           from:             <<: *trakt_tv_list           settings:             exact: no             target: 1080p hdtv+             quality: 1080p webrip+             timeframe: 18 hours             propers: 2 days             identified_by: ep       - configure_series:           from:             <<: *trakt_tv4k_list           settings:             exact: no             target: 2160p webrip+             quality: 1080p webrip+             timeframe: 3 days             propers: 3 days             identified_by: ep
Series show:
│ S01E05     │ 3d 16h    │ The Mandalorian S01E05 iNTERNAL 720p WEB H264-AMRAP                                               │ 720p webdl h264           │ │            │           │ The Mandalorian S01E05 Chapter 5 720p DSNP WEB-DL DDP5 1 H 264-NTb                                │ 720p webdl h264 dd+5.1    │ │            │           │ The Mandalorian S01E05 720p x265-ZMNT                                                             │ 720p h265                 │ │            │           │ The Mandalorian S01E05 1080p WEBRiP x264-PETRiFiED                                                │ 1080p webrip h264         │ │            │           │ The.Mandalorian.S01E05.1080p.WEBRiP.x264-PETRiFiED *                                              │ 1080p webrip h264         │ │            │           │ The Mandalorian S01E05 1080p HEVC x265-MeGusta                                                    │ 1080p h265                │ │            │           │ The.Mandalorian.S01E05.Chapter.5.720p.DSNP.WEB-DL.DDP5.1.H.264-NTb                                │ 720p webdl h264 dd+5.1    │ │            │           │ [REQ] The Mandalorian S01E05 HDR 2160p WEBRiP x265-PETRiFiED                                      │ 2160p webrip h265         │ │            │           │ The Mandalorian S01E05 HDR 2160p WEBRiP x265-PETRiFiED                                            │ 2160p webrip h265         │ │            │           │ The Mandalorian S01E05 2160p WEBRip X264 Ac3 SNAKE                                                │ 2160p webrip h264 ac3     │ │            │           │ The.Mandalorian.S01E05.HDR.2160p.WEBRiP.x265-PETRiFiED                                            │ 2160p webrip h265
Log snippet:
2019-12-09 03:53 INFO     task          search-tv       Plugin next_series_episodes has requested task to be ran again after execution has completed. Reason: Look for next season 2019-12-09 03:54 INFO     flexget.components.series.series search-tv       The Mandalorian (2019): timeframe waiting for 05h:45min. Currently best is The.Mandalorian.S01E05.1080p.WEBRiP.x264-PETRiFiED. 2019-12-09 03:54 INFO     task          search-tv       Rerunning the task in case better resolution can be achieved. 2019-12-09 03:54 INFO     flexget.components.series.series search-tv       The Mandalorian (2019): timeframe waiting for 05h:44min. Currently best is The.Mandalorian.S01E05.1080p.WEBRiP.x264-PETRiFiED. 2019-12-09 09:53 INFO     task          search-tv       Plugin next_series_episodes has requested task to be ran again after execution has completed. Reason: Look for next season 2019-12-09 09:54 INFO     flexget.components.series.series search-tv       Timeframe expired, releasing quality restriction. 2019-12-09 09:54 INFO     download      search-tv       Downloading: The.Mandalorian.S01E05.1080p.WEBRiP.x264-PETRiFiED 2019-12-09 09:54 INFO     transmission  search-tv       "The.Mandalorian.S01E05.1080p.WEBRiP.x264-PETRiFiED" torrent added to transmission

@frankyw very interesting use of sequence and configure series, I am not sure what the end result of that will be. Later use may just override former in weird ways ..

I've used configure_series like that inside sequence, it should work fine (unless you have some overlapping shows between those 2 lists, in which case I can't be sure what will happen.) @frankyw What do you expect it should have grabbed instead, is that show on the 4k list? It seems the non-irc task is the one that grabbed after timeframe expired, which probably means your issue is unrelated.

@gazpachoking No overlapping shows between lists. I was expecting a 2160p WEBRip to be grabbed, as I had defined target to be 2160p and multiple 2160p episodes had been seen inside the timeframe.
The log says the best available was 1080p Webrip, but actually the best available was the 2160p Webrip if you look at the output of the 'series show'. It basically picked something that was not the best available.
I ended up removing target altogether and just setting quality to 2160p on the 4K list.

Ohhh, I see your problem. You have quality set to 1080p webrip+ You probably want 1080p+ webrip+


Null return policy

In API7 and before, configurate was in separate namespace, but in API8, configurate will be in same namespace as SpongeAPI.
SpongeAPI forbids returning nulls, but configurate can return nulls.

Wrap returns in Optional
Throw exception if null
Leave as is

More suggestions are welcome

IMO, leave as-is.
There's a fundamental difference between Sponge's disdain for null and how a general configuration library should view null. A configuration value not existing is a valid state for a configuration file.
Configurate already supports providing a default value if you don't want to accept a null value as a valid return.

So I've tried a few times to make Configurate work with Optionals, but due to Configurate's defaults system and its ability to write defaults back to the node on gets, switching to Optionals would result in a loss of functionality.
The realistic options going forward are:

keep things as they are, perhaps doing a thorough review of nullability annotations to make sure we are providing accurate hints
Switch to a class that has the same functionality as Optional but that is specific to Configurate and can handle writing back defaults. I don't think this is the right way to go.

There are upcoming API changes like ValueReferences (See #142) that may resolve some of the nullability concerns as well -- but 4.0 has a little while before it needs to be ready, so we can let some ideas grow for a bit.

Alright, with the checkstyle coming in i'll be officially enforcing no optionals across Configurate. Nullability annotations will be verified and improved component-by-component. I'll be looking for static analysis tools to verify nullability automatically too.


Error in console, in game ship disappears

https://hastebin.com/tozuhazube.css

Also, after a restart the ship reappears and acts normally apart from it raising up to the set height and then dropping like a stone. Repeats

Hastebin has expired.


Gilded Enderite Armor uncraftable

I don't know how to explain to you my problem but the gilded enderite armor cannot be craft but in the JEI, we see the craft.  My minecraft version is 1.21 and the mod version is Enderite-CJ-fabric-mc-1.21-2.2.1. The mod Gilded Netherite CJ Edition is installed to.

Yes I have removed the tags from Gilded Netherite, I have added them back, so it is now fixed, thanks for the report.
I am going to upload the fixed version now.

Is the second craft supposed to work? I'm trying to transform an Enderite Chestplate into a Gilded Enderite Chestplate, but it's not working.
The craft to transform a Gilded Netherite Chestplate into an Gilded Enderite Chestplate is working,

Now it is too late, to morrow I going to fix the Tag issue again.

I published another update earlier.
Now it should be fixed.


Unique keys are removed

I'm getting the react warning:
Warning: Each child in an array or iterator should have a unique "key" prop. See https://fb.me/react-warning-keys for more information.
When I inspect the children rendered within the masonry component, I don't see a key prop.
Here's how I'm implementing:
class Container extends Component {
  render() {
    const { masonryStyle } = this.props
    const masonryContainerStyle = { position: 'relative', width: '595px', display: 'block', margin: 'auto' }
    const masonryOptions = { itemSelector: '.item', columnWidth: 200, gutter: 20, containerStyle: masonryContainerStyle }

    const Items = list.map((item, index) => (
      <Item key={index} className={'saved-item'} item={item} />
    ))

    return (
      <Inner>
        {masonryStyle ? (
          <Masonry options={masonryOptions}>
            {Items}
          </Masonry>
        ) : (
          <div>
            {Items}
          </div>
        )}
      </Inner>
    )
  }
}

Is this a known issue with keys getting removed? Am I doing something wrong?

Gonna go ahead and close this. It was an issue on my end. Thanks for providing this tool!


<EMAIL_ADDRESS>Fix urls

Attempt to fix issue 12366.

Closes #12366

[x] I have read the Contributing Guide.

/verify

I was in a rush and didn't check the hash as I expected to be unchanged. My bad :(
Checking hash of qtemu_portable_x86_64.zip ... ERROR Hash check failed!
App:         extras/qtemu
URL:         https://web.archive.org/web/20210417194244/https://carlavilla.es/qtemu/qtemu_portable_x86_64.zip
First bytes: 3C 21 44 4F 43 54 59 50
Expected:    08d49556ae09055262ca31e2c7d453a803e815cbd55391792f81846e77985379
Actual:      c77a79cd8abc5e97d244b919f05951c7becd52a9dc0204d29bb92512e952114a

@HUMORCE may I leave this to you?


On delete cascade from errors table

Description
On delete cascade from errors table
Type of change

Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Unit tests (no changes in the code)

Testing steps
Done on CI
Checklist

[ ] make before_commit passes
[ ] updated documentation wherever necessary
[ ] added or modified tests if necessary
[ ] updated schemas and validators in insights-data-schemas in case of input/output change

Codecov Report
Base: 65.80% // Head: 66.60% // Increases project coverage by +0.80% :tada:

Coverage data is based on head (aa2e60c) compared to base (eb521e7).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #332      +/-   ##
==========================================
+ Coverage   65.80%   66.60%   +0.80%
==========================================
  Files          12       13       +1
  Lines        1117     1144      +27
==========================================
+ Hits          735      762      +27
  Misses        362      362
  Partials       20       20

Impacted Files
Coverage Δ

migration.go
100.00% <ø> (ø)

mig_0006_on_delete_cascade_from_errors_table.go
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add nocache directive to prevent erb files from being cached

This could be used to disable caching of individual .erb assets without having to disable it for all of them (avoiding #210).
Alternatively, this could be handled through a preprocessor instead: eg asset.js.erb.nocache

Background:
In my case I needed client-side access to the manifest in order to dynamically load the digest versions of the assets on demand.
Example: app/assets/javascripts/manifest.js.erb
window.Manifest = <%= asset_manifest %>;

When changes are made to the asset_manifest helper or new assets are added, they won't be reflected in the underlying asset until A) you manually clear the cached asset, or B) bump the assets version.  Both solutions are overkill for such a simple need.
Right now I'm working around this by having the asset_manifest helper inject an inline script tag to initialize the manifest instead.   The separate manifest.js.erb approach feels a lot cleaner but the caching issues prevent it from being practical.

Hey, I had the same issue and got the solution from #563. There you will find my example.

I also would love a nocache directive or some solution to the problem of dynamically generated code from variables. We have a set of constants that get mirrored to the client-side and it's such a pain and source of bugs to clear the cache anytime any of those constants change.


Tracking Task State changes

Hi,
Is there any way to subscribe to an event that would alert me if a task state has changed? What I'm really interested in is when a task changes from stopped to running and vice-versa. I'm on Windows Server 2012 with tasks that are created manually.
On Windows 2003 I subscribed to changes in the filesystem to detect any changes to tasks. This still works in 2012 EXCEPT in the case where there is a state change: no file system changes seem to happen in this case.
Thanks in advance!
PS. Thanks for the great library, it's otherwise everything i could possibly want =)
Originally posted: 2014-06-12T00:27:39

That would be a nice feature, but there is nothing in the native library that would support this.
Originally posted: 2014-06-16T08:43:42


"Remove duplicate item in a list" doesn't work [bug]

extension version: 1.4.6
browser version: Firefox 68.0.1
operating system: Windows 8.1
problem description: When tabs are stored into a titled tab, some tabs could be duplicates even if Remove duplicate item in a list set to true
actual behavior: Extension saves duplicates into a titled list
expected behavior: Extension will automatically remove duplicates from any list
reproduce steps:

Open some tabs in Firefox
Create a titled list by storing tabs
Open another set of tabs with some of them using the same URL as the ones stored in the titled list created in previous step
Store tabs in the titled list
Inspect list to find duplicates
Become annoyed by this bug :)

Same here in Version: 1.4.7 running on google chrome Version 81.0.4044.113 (Official Build) (64-bit)


Feat: Add miniaturized logos for programs in the bookmark page

Describe the feature
Description
Under the Bookmarks Section in the Navigation Menu on the side, I would like to add miniaturized logos for the programs that are bookmarked, so that users would be able to know which programs are bookmarked and be able to identify them through logos. The bookmarks page looks a bit empty in my opinion. The reasoning behind me wanting to make the logos smaller than the size used on the homepage, is mainly because I do not want to clutter and ruin the whole view in the bookmark page, while still wanting to make it more visually appealing with the presence of the logos. I'll make sure the logos remain small yet visible.
Add ScreenShots
Navigation Menu

Bookmarks Section

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

I'll also try to fix the text that is put without spaces, it doesn't look really appealing although it gets the job done.


Configure relationship uniqueness while setting navigationToDependent

Resolves #1924

If this looks fine then I will add tests.

Also change InternalRelationshipBuilder.Unique to set PrincipalToDependent to null if it's not compatible

Added tests.

:shipit:


Update Object3D gizmo controls

@drcmda started a improved set of gizmo controls for Object3D found here: https://codesandbox.io/s/object-gizmo-controls-om2ff8?file=/src/App.js
To finish them off, the scaling needs to be corrected.

What's the difference between this one and the one currently in Drei? It would also be good for the controls to be able to disable modes depending on the selected entity - as couldn't some not have the props available?
Would be interesting to see what users would prefer - the all in one gizmo or the traditional gizmo with different modes. Do you have a preference Krispy?

I believe it's the same and @drcmda was looking for help fixing the scaling. Those are good points, we definitely will want to control what... well controls are available.
When in doubt I look to what user tested apps do. Spline does an all in one. Unreal splits them out as separate controls with a menu:

Both look good to me and I think it would be just fine to have it be an editor setting to switch between the two. What I notice is that the all in one takes less UI and is almost ready to go while the separate controls will take some additional dev. My direction was to go for minimal UI and only add when it got in the way or was annoying, so I was looking to Spline for a lot of hints. I'm open to looking at adding to the UI too!

I took a closer look at the transform controls and realized that it does have the position, rotation and scale as separate controls already. Maybe we can just have a setting to swap between which the user prefers. The UI question is solvable. :)


Enable Windows Update service for Appveyor builds

Resolves some occasional failures in installing PHP where choco has a dependency on something from Windows Update being installed. It's disabled by default on Appveyor (presumably they do it manually from time to time, but not good enough for us here).

Many thanks @padraic !


"TypeError: undefined is not an object" when calling evalEs

mac m1
This error suddenly started showing up out of nowhere...
Even after rolling back to commits that did work, it doesn't help.

Reverting back to an old commit where everything worked didn't help (even after re-building), something broke in the interaction between bolt and csi

Ensure your Apple Silicon machine is setup correctly:
https://hyperbrew.co/blog/setup-extendscript-dev-for-apple-silicon/
If you're still having issues on a fresh Bolt CEP project, (i.e. even the example functions don't work) please provide your system specs and app details.

Assuming this issue is resolved, if it comes up again, feel free to re-open


Add bedrock:completion:anthropic.claude-v2.1

As in title

I don't think I have access to this model yet - what is the current behavior when you try to run it with promptfoo?

I think it should be added here: https://github.com/promptfoo/promptfoo/blob/bc83295b59c307b4764d14af6fd15ad2a78d8541/src/providers/bedrock.ts#L67
Currently I'm getting "TypeError: Cannot read properties of undefined (reading 'params') TypeError: Cannot read properties of undefined (reading 'params') at AwsBedrockCompletionProvider.callApi"

But this'll be more complicatede - claude v2.1 supports system prompts (no "Human:" at the beggining of the prompt).

#470 solves the error at least - so you can use claude-2.1 without a system prompt.
As for supporting system prompt, what do you think is the best way?  Some thoughts:

Completely remove the logic that prepends Human: and appends Assistant:.  This means that users will have to set custom prompts for Anthropic, but minimizes the amount of magic stuff that's happening
Support OpenAI-style role, content JSON objects
Some other approach?

Adding Human: Assistant: is similar to langchain - we could try to map langchain solution to promptfoo codebase. From the other side, I agree that this "magic" isn't something I like in langchain. And we have functionality that adds prefix/suffix to the prompt in promptfoo if I remember correctly. So probably good documentation without "magic stuff" sounds reasonable.

Closing this out as this format is now legacy with Claude 3


Add placeholder for File Input

If the file input is

[ ] Empty => display "Upload" placeholder
[ ] Has non-image file => display "File" placeholder

The icon set doesn't have word/excel/pdf file icon


Cross-validation doesn't work with ExponentialFitter/WeibullFitter/KaplanMeierFitter

Is this by design?
The issue appears to be that e.g. KaplanMeierFitter.fit() takes T and E as series rather than a dataframe with column references for T and E (which is how CoxPHFitter seems to work).
E.g. when I try to run:
ef = ExponentialFitter()
print(np.mean(k_fold_cross_validation(ef, data, duration_col='T', event_col='E')))
The error is:
fit() got an unexpected keyword argument 'duration_col'

This is by design, at least, I never anticipated to use those univariate fitters in prediction setting. I'm not sure if I want to support that or not - I need to consider it more.

The UnivariateFitters are more like a summary-statistic than a prediction model (ex: histogram vs. a random forest). I was thinking, you can actually still use a baseline that looks a lot like using a KaplanMeierFitter. If you use an empty DataFrame (expect for T and E) in CoxPHFitter().fit, the baseline survival curve will be almost identical to the kaplan-meier survival curve.
from lifelines import KaplanMeierFitter, CoxPHFitter
from lifelines.datasets import load_rossi

rossi = load_rossi()

kmf = KaplanMeierFitter()
kmf.fit(rossi['week'], rossi['arrest'])
ax = kmf.plot()

cph = CoxPHFitter()
cph.fit(rossi[['week', 'arrest']], 'week', 'arrest')
cph.baseline_survival_.plot(ax=ax)


POST, DELETE Reactions and Add/Remove Friends

POST, DELETE Reactions and Add/Remove Friends
User Story
AS A social media startup
I WANT an API for my social network that uses a NoSQL database
SO THAT my website can handle large amounts of unstructured data
Acceptance Criteria
GIVEN a social network API
WHEN I test API POST and DELETE routes in Insomnia
THEN I am able to successfully create and delete reactions to thoughts and add and remove friends to a user’s friend list

Routes to add and remove friends and reactions have been added to the application.  The routes have been tested and are working as expected.


postgres initdb doesn't work from command line in nix-shell

Describe the bug
Сalling initdb command leads to error
Command call log:
initdb: file "/nix/store/ig7v414akarh5585a3n311s1g2djfahg-build-tools-wrapper/share/postgresql/postgres.bki" does not exist This might mean you have a corrupted installation or identified the wrong directory with the invocation option -L.
It seems that  this bug is still actual, but for nix-shell, not NixOS itself
Metadata

system: "x86_64-linux"
host os: Linux 5.3.0-40-generic, Ubuntu, 19.10 (Eoan Ermine)
multi-user?: no
sandbox: yes
version: nix-env (Nix) 2.3.2
channels([user]): "nixpkgs-20.03pre212770.cc1ae9f21b9"
nixpkgs: /home/[user]/.nix-defexpr/channels/nixpkgs

I ran into this issue, and figured out it's because of this: https://github.com/postgres/postgres/blob/eab6e460e00d61e5aae95298a0fe8c79a1653184/src/port/path.c#L514-L537
postgres assumes that all the share files and such are relative to the installation location, and it uses the binary name to find that path. We could patch in a goto no_match; to make it always use the absolute path, which would do away with the need to link in all the directories.

Hmm looking into it some more, I don't think this is fixable without breaking extension support, since those need to be installed into the /share directory.
So the alternative is that you link postgres's /share directory into your env, or provide the -L flag

Even providing -L does not work, since apparently other scripts try to do the same things:
ᐅ initdb -L /nix/store/ic0dc8iy6g880wjp92wrakkaln5k92iq-postgresql-14.6/share/postgresql tmp
The files belonging to this database system will be owned by user "jfelice".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory tmp ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 20
selecting default shared_buffers ... 400kB
selecting default time zone ... America/New_York
creating configuration files ... ok
running bootstrap script ... 2023-02-08 12:54:42.599 EST [65025] FATAL:  could not open directory "/run/current-system/sw/share/postgresql/timezonesets": No such file or directory
2023-02-08 12:54:42.599 EST [65025] HINT:  This may indicate an incomplete PostgreSQL installation, or that the file "/run/current-system/sw/bin/postgres" has been moved away from its proper location.
child process exited with exit code 1
initdb: removing contents of data directory "tmp"

A work-around:
$(readlink -f $(which initdb)) tmp

This appears fixed for me on NixOS 23.05. (Ironically, #23655 seems to have regressed for me)
[b@kuusi:~/Projects/dotfiles/nixos]$ ns -p postgresql
[nix-shell:~/Projects/dotfiles/nixos]$ which pg_ctl
/nix/store/a0hcylfjxz0qbq2z90bzs1ps6940y2b0-postgresql-14.8/bin/pg_ctl

[nix-shell:~/HaskellFoundation]$ make -f db.makefile
/nix/store/a0hcylfjxz0qbq2z90bzs1ps6940y2b0-postgresql-14.8/bin/pg_ctl initdb -D /home/b/HaskellFoundation/.postgres-work
The files belonging to this database system will be owned by user "b".
This user must also own the server process.

The database cluster will be initialized with locale "en_GB.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /home/b/HaskellFoundation/.postgres-work ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Europe/Helsinki
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

initdb: warning: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    /nix/store/a0hcylfjxz0qbq2z90bzs1ps6940y2b0-postgresql-14.8/bin/pg_ctl -D /home/b/HaskellFoundation/.postgres-work -l logfile start

pg_isready -q || /nix/store/a0hcylfjxz0qbq2z90bzs1ps6940y2b0-postgresql-14.8/bin/pg_ctl start -w -o "-F -h '' -k /home/b/HaskellFoundation/.postgres-work" -l /home/b/HaskellFoundation/.postgres-work/logfile
waiting for server to start.... done
server started
psql -lqt | cut -f1 -d \| | grep -qw ghc_perf || createdb ghc_perf

[nix-shell:~/HaskellFoundation]$


Programmatically restarting Command using kill/start API produce wrong termination

Description
I'm using concurrently to run 2 commands in parallel on my application:

Watch's application code using swc
A plain node ./dist/server.js command which starts my HTTP server.

I wanted to implement a logic of which every time SWC outputs a successful watch compilation output, to restart the NodeJS server by combining the Command object kill/start API.
Here is a simplified example of my code:
const commands = [
    { name: 'SWC watcher', command: 'swc src -d dist/server -w -D' },
    { name: 'HTTP Server', command: 'node -r dotenv/config ./dist/server/index.js' },
];

const concurrency = concurrently(commands, {
    killOthers: ['failure'],
    prefixColors: ['magenta', 'yellow']
});

let shouldRestart = false;
const [watcherCommand, serverCommand] = concurrency.commands;

serverCommand.close.subscribe(() => {
    if (shouldRestart) {
        shouldRestart = false;
        serverCommand.start();
    }
});

watcherCommand.stdout.subscribe((data) => {
    const input = data.toString().trim();

    if (compilationCompleteRegex.test(input)) { // Detects compilation end output
        shouldRestart = true;
        serverCommand.kill('SIGTERM'); // HTTP listens and gracefully shuts down
    }
});

Actual Behaviour
After 2 restarts the concurrency top command resolves as both commands was terminated but in fact, both commands still up and running.
Some Technical details
It seems that CompletionListener.listen method actually uses bufferCount to assume its commands were terminated by counting the close events but programmatically using Command.start/Command.kill API's can cause un-expected behaviour in this manner as nothing was actually terminated rather solely restarted
Thanks in advanced 🙏

Hey, I opened a draft PR for a potential fix here would love for any comments 🙏

I recommend using something like node-dev.
If you don't want that, or it doesn't work for some reason, another solution you could use today is to set restartTries: -1. This makes killed processes restart forever, so you don't need to manually restart. Completion is autmoatically handled in this case.
But for restarting at a random moment, there'll will still be issues, as you demonstrate.

Hey,
First thanks for the proposals, appreciated 👍
Both of these won't really do for me:

node-env won't just do, as I need to wait for successfull compilation of the main app or one if its workspace dependencies ( we are working with npm workspaces )
I don't wanna use restartTries as some commands that fail, should crash the process (unlike the restartable command)

I think i will create a process, that just stays up for ever and manage a subprocess with restarts undertneeth, where as far as concurrently all commands will ever run if we won't have a near term solution

I don't wanna use restartTries as some commands that fail, should crash the process (unlike the restartable command)

If your app doesn't need to gracefully exit, you should be able to send a SIGKILL instead of a SIGTERM in this case

It doesn't as we are using this for local development mode, tho I'm not sure how using SIGKILL will help here? Won't it emit close event of that command as-well ?

Hey! This is now available in v9.0.0.
https://github.com/open-cli-tools/concurrently/releases/tag/v9.0.0


Nominator: Avoid nominating inferior values

this will help minimize the number of values network
is voting on
Fixes #3230

Rebased on upstream.


dkovalyov/Charts-additions

Demos were added for all the existing viewers.
Also, the sunburst viewer was refactored.
Issues #1570 and #1571 were fixed.

unnecessary demo-data.ts and test-data.ts files were removed
also, utils.ts in tests were moved to separate folder

subscribe on semantic type detection was added in the globe viewer demo, but for now, it isn't used because of a bug, will be changed later
about docking API - went through all the demo charts and decided that it isn't needed there, default positioning works fine

replaced setTimeout in the globe demo with a DG.debounce


HMAC Sha256 - Borrowed Value Does Not Live Long Enough

Hi there - thanks for this library! I've found it very handy indeed!
I'm very very new to Rust and I'm having an issue with creating HMAC SHA256 digest strings and doing something with the result. I'm trying to get a signature, and push it to a vector. It's more likely a problem with me than the library!
fn main() {

    let mut vector: Vec<&str> = vec![];

    let secret = "hello";
    let to_sign = "hi";

    let mut hmac = Hmac::new(Sha256::new(), secret.as_bytes());

    hmac.input(to_sign.as_bytes());

    let signature = hmac.result().code().to_hex();

    vector.push(&signature);

}

The error I'm getting is:
src/main.rs:25:18: 25:27 error: `signature` does not live long enough
src/main.rs:25     vector.push(&signature);
                                ^~~~~~~~~
src/main.rs:14:40: 27:2 note: reference must be valid for the block suffix following statement 0 at 14:39...
src/main.rs:14     let mut vector: Vec<&str> = vec![];
src/main.rs:15
src/main.rs:16     let secret = "hello";
src/main.rs:17     let to_sign = "hi";
src/main.rs:18
src/main.rs:19     let mut hmac = Hmac::new(Sha256::new(), secret.as_bytes());
               ...
src/main.rs:23:51: 27:2 note: ...but borrowed value is only valid for the block suffix following statement 5 at 23:50
src/main.rs:23     let signature = hmac.result().code().to_hex();
src/main.rs:24
src/main.rs:25     vector.push(&signature);
src/main.rs:26
src/main.rs:27 }

Any help would be hugely appreciated! :)

Ah nevermind - this fixed it:
fn main() {

    let hex : String;
    let mut signature : &str;

    let mut vector: Vec<&str> = vec![];

    let secret = "hello";
    let to_sign = "hi";

    let mut hmac = Hmac::new(Sha256::new(), secret.as_bytes());

    hmac.input(to_sign.as_bytes());

    let result = hmac.result();

    let code = result.code();

    hex = code.to_hex();

    signature = &hex;

    vector.push(signature);

}

As I suspected, it was an issue with me than the library!


Add option to override project directory.

Pull Request Check List

[ ] Added tests for changed code.
[ ] Updated documentation for changed code.

Being able to set the project directory at the command line is extremely useful for using automated tools and running in repositories that contain multiple projects (which are an unfortunate reality in a lot of environments).
Adding this also required making run compatible with pre-command options.
This implementation is far from ideal but a clean way of doing this will necessitate changes to cleo from what I can tell. Mainly looking for input/feedback.

Yay, this option would be useful for me!
I use a little wrapper script to make it easy for people in my team to run Python tools packaged with Poetry. The scripts looks like this:
#!/usr/bin/env bash

set -e

# Helper for starting a Python script with dependencies managed by
# Poetry. Use it in the shebang line of your Python script:
#
#   #!/usr/bin/env runpoetry
#
# When invoked, runpoetry will make sure to call 'poetry install' to
# install dependencies from your pyproject.lock file.

# The realpath command doesn't exist on OS X, so here is a portable
# replacement.
realpath() {
    local path="$1"
    if [[ -h "$path" ]]; then
        local target=$(readlink "$path")
        if [[ $target[0] =~ '^/' ]]; then
            echo "$target"
        else
            echo "$(dirname "$path")/$target"
        fi
    else
        echo "$path"
    fi
}

# Poetry looks for the pyproject.toml file the current directory, so
# we need to change to the directory of the script being invoked
# (passed in $1). Using realpath allows $1 to be a symlink to the real
# Python script.
OLD_PWD=$PWD
cd "$(dirname "$(realpath "$1")")"

# We can now install the dependencies in the virtualenv Poetry
# maintains.
poetry install --quiet --no-interaction --no-dev

# We now invoke the script and take care to change back to the
# original working directory first. We pass the target directory and
# any positional arguments as positional arguments to the inner Bash
# process. That way it can take care of passing them through unchanged
# to the Python invocation.
exec poetry run bash -c 'cd "$0" && python "$@"' "$OLD_PWD" "$@"

As mentioned in the comments, the runpoetry wrapper script can be used as the shebang line and will invoke poetry install before invoking the original script with poetry run.
However, the path changing code is a bit scary and it would be awesome to be able to use a --project flag instead.

Closing this since this is not a direction I don't want Poetry to go in at the moment.


On first focus, dropdown options are filling up the entire page

Describe the bug
When a dropdown is focused on for the first time, the options are displayed but they cover the entire page such that, the user cannot see what they are typing in order to filter the options.
Component
SDC library
To Reproduce
Steps to reproduce the behavior:
N/A
Expected behavior
I expect the options to be shown underneath the dropdown as is shown later in the video below.
Screenshots
https://user-images.githubusercontent.com/90775548/206134634-b033c143-2563-4e8e-bd6c-966c627d34af.mp4
Smartphone (please complete the following information):

Device: Samsung A12
Android version: 11
Build number: RP1A.200720.012.A127FXXU4AUK1
Version: 30

Additional context
Here is the questionnaire used for the video above.
Would you like to work on the issue?
I think this can be a follow up to https://github.com/google/android-fhir/pull/1722

Yes, I agree with both of these issues and the proposed solutions.

dropdown options should not cover the input box. Options should be shown below the box.
all dropdown options should be visible when the user removes the typed text

Not enturely sure what we can do about 1) to be honest - i cannot reproduce this issue on my device. we don't really control the position of the dropdown, so the fact that it covers the input box is a little tricky to fix. any ideas @KhumboLihonga or @aditya-07?
about 2) we can probably do something about it.

i don't believe this is a P1 issue - the usability of the widget is not seriously impacted by this.

@jingtang10 I've tried to position the dropdown in different parts of the questionnaire and I can see what you mean when you say you don't control the position of the dropdown. As per the screenshot, it's just not intuitive to the user to start typing when they see something like this when the dropdown first receives focus. However, I do agree that this is more of a minor issue as the widget itself works.


SpeechRecognitionConstraintProbability enum described wrong?

Hello,
I am referring to this doc:
https://docs.microsoft.com/en-us/uwp/api/windows.media.speechrecognition.speechrecognitionconstraintprobability
https://github.com/MicrosoftDocs/winrt-api/blob/docs/windows.media.speechrecognition/speechrecognitionconstraintprobability.md/#L0
It looks that the description of "default" and "min" is swapped:
## -enum-fields
### -field Default:0
The constraint has a low weighted value.

### -field Min:1
The constraint has a medium weighted value.

### -field Max:2
The constraint has a high weighted value.

I guess the correct version would be:
## -enum-fields
### -field Default:0
The constraint has a medium weighted value.

### -field Min:1
The constraint has a low weighted value.

### -field Max:2
The constraint has a high weighted value.

Please correct me if I am wrong.

Thanks for the feedback and suggestions! I confirmed with the feature team devs that the values and descriptions are correct as they are currently listed. There are no plans to revise this due to the number of existing apps that it would affect.


Document formatting

Apply syntax highlighting to bibtex in README.md. This makes README.md easier to read.

Thank you for the contribution :)


Remove Closure from DevTools

Problem statement
DevTools is not a closure-compiled demo, but it is peppered with goog calls: provides, require, and a color picker. Replace this code to eliminate issues like https://github.com/google/closure-library/issues/897.
Consider https://neil.fraser.name/software/colourpicker/ or other color picker available via npm.
(Alternatively... add a compilation step into DevTools, though
Expected Behavior
Code that is never compiled with Closure should not include goog.require and goog.provide statements.
DevTools should not depend on Closure's color picker, since it is not compiled to ensure dependencies are correctly linked/available.
Recompiling main Blockly libraries, if successful, should not change whether Block Factory runs.
Actual Behavior
Recent changes in Closure broke Block Factory (and probably DevTools), even though the Blockly compilation step succeeded.
See https://github.com/google/blockly/issues/1830

See https://github.com/google/blockly/issues/1834


Typesetting formulas

We have a couple of formulas in Pan Docs, especially when sound is involved: for example, X(t) = X(t-1) +/- X(t-1)/2^n in the "Channel 1 Sweep register" section.
I believe formulas typeset like this are hard to read, so I looked for alternatives, and found MathML (HTML5 spec), which is very nice... but doesn't work in Chrome besides version 24 (current is 92).
Another alternative would be Mathjax, which mdBook natively supports; however, the JS-less experience may be degraded, and the page layout may shift while the formulas are being rendered, likely more jarringly on the "single" page.
I finally found mdbook-katex, which pre-renders equations written in LaTeX format, probably in a similar fashion as MathJax, i.e. generating SVGs.
What should we go with?

mdbook-katex looks good, though, looking at its API, it doesn't seem to support changing font color? This would render it incompatible with our themes. MathML doesn't look like its widely adopted, although I'll admit that I'm not really aware of web standards (maybe I'm just ignorant, but it looks like its not supported on Android, for example).
If someone finds a way to change colors according to the theme, mdbook-katex is probably the better option, otherwise, Mathjax wins IMO

Since it [seems to] generate SVGs, I'd assume those are styled to follow the document's stylesheet via CSS variables (like our own diagrams do). Testing is in order, anyway.

Any update on this? It looks promising

We settled on MathML in #350; with the polyfill in place, and Chrome 109 re-adding native support, I think this cements it as our pick going forward. Therefore, closing this as a duplicate of #441.


Show energy flow details on large enough screens

Opens energy flow details initially if the screen is large enough (tablets, desktops).

I'm not a big fan of this as the details can be confusing for novice users. Maybe closed by default but remember "open" state?

I also remember there was a request to show >1 loadpoint concurrently. This PR would be sort of diametrical?

Ok, then I'll switch to "remember last state". It's also more universal and also works on smaller screens.


Creating a heightfield

Hi, first of all thank you for creating & maintaining this project <3
I'm struggling to create a heightfield, would be great if an example was provided somewhere.
Stumbled upon an old related issue (#41) with some Kotlin code, however that uses cooking and is since outdated (uses Vector_PxHeightFieldSample)
Current attempt below - see comments.
Any help is appreciated!
try (MemoryStack mem = MemoryStack.stackPush()) {
    PxMaterial material = physics.createMaterial(0.5f, 0.5f, 0.5f);

    PxTransform identityPose = PxTransform.createAt(mem, MemoryStack::nmalloc, PxIDENTITYEnum.PxIdentity);
    this.actor = physics.createRigidStatic(identityPose);

    final int size = 1000;
    PxArray_PxHeightFieldSample samples = PxArray_PxHeightFieldSample.createAt(mem, MemoryStack::nmalloc, size * size);
    PxHeightFieldSample sample = new PxHeightFieldSample();
    for (int x = 0; x < size; x++) {
        for (int z = 0; z < size; z++) {
            sample.setHeight((short) ((Math.sin(x + z) + 1) * 20));
            samples.set(x * size + z, sample);
        }
    }
    sample.destroy();

    //How to properly instantiate PxStridedData?
    PxStridedData stridedData = PxStridedData.wrapPointer(samples.getAddress());
    stridedData.setData(samples);
    stridedData.setStride(2);

    PxHeightFieldDesc heightFieldDesc = PxHeightFieldDesc.createAt(mem, MemoryStack::nmalloc);
    heightFieldDesc.setFormat(PxHeightFieldFormatEnum.eS16_TM);
    heightFieldDesc.setNbColumns(size);
    heightFieldDesc.setNbRows(size);
    heightFieldDesc.setSamples(stridedData);
    heightFieldDesc.setFlags(PxHeightFieldFlags.createAt(mem, MemoryStack::nmalloc, (short) 0));

    //CreateHeightField returns null :(
    PxHeightField heightField = PxTopLevelFunctions.CreateHeightField(heightFieldDesc);
    PxHeightFieldGeometry heightFieldGeometry = PxHeightFieldGeometry.createAt(mem, MemoryStack::nmalloc);
    heightFieldGeometry.setColumnScale(1);
    heightFieldGeometry.setRowScale(1);
    heightFieldGeometry.setHeightScale(1);
    heightFieldGeometry.setHeightField(heightField);

    PxMeshGeometryFlags meshGeometryFlags = PxMeshGeometryFlags.createAt(mem, MemoryStack::nmalloc, (byte) 0);
    heightFieldGeometry.setHeightFieldFlags(meshGeometryFlags);

    PxShapeFlags shapeFlags = new PxShapeFlags((byte) (PxShapeFlagEnum.eSCENE_QUERY_SHAPE.value | PxShapeFlagEnum.eSIMULATION_SHAPE.value));
    this.shape = PxRigidActorExt.createExclusiveShape(actor, heightFieldGeometry, material, shapeFlags);

    //Are these all fine to destroy or are they referenced in native memory?
    shapeFlags.destroy();
    material.release();
    samples.destroy();
    stridedData.destroy();
    heightFieldDesc.destroy();
}

Sorry completely missed that. First thing which is probably wrong is stridedData.setStride(2);. It should be  stridedData.setStride(PxHeightFieldSample.SIZEOF);. Height field samples also have a material index, so it's more than only the two bytes for a short. I'm not sure if that's the only problem but I would start there.


Can't create a new identity

The Issue
When ever I try to create a new identity, it says "Unable to create channel due to an internal error."
Steps to reproduce

Goto the publish tab
Under identity, click new identity
Fill out the rest, then click "Create Identity", it will not work

Expected behaviour
This should create my username/identity
Actual behaviour
It says "Unable to create channel due to an internal error."
System Configuration

LBRY Daemon version: 0.10.0rc15
LBRY App version: 2.7.21
LBRY Installation ID: ???
Operating system: Ubuntu-16.04-xenial

I can't duplicate either on the latest RC or a dev build. Do you have any errors in your JS console? If you can copy and paste or send a screenshot, that would help me figure out what's different between my installation and yours. (Easiest way to get to the dev tools is just right click anywhere on the page -> Inspect Element.)

I believe this is fixed.


Does application UI become really locked during run in background (alt+tab) ?

It seems desktop app shows unlocked and becomes locked in a moment if you're using "Auto-lock" setting. Not sure if it is a real (or keeweb related) issue but may worth attention.
STR:

Open personal db (default window size)
Set General -» Function -» Auto-lock if app is inactive in 5 minutes
Switch (atl+tab) to another maximized (using spectacle app if it matters) app and do not open keeweb for at least 5 min
Then switch back to keeweb

CR:
UI shows unlocked and becomes locked in a moment

desktop app
OS X El Capitan 10.11.3
new db w/ personal data
v1.0.4

This is very strange, I'll verify this. The apps locks by timeout, maybe something like animations issue (which could be played when you return to the app).

Thank you! Will try to provide more info. Meantime, most probably I'm doing something wrong, so appreciate any info. I've some issues w/ running grunt tasks in os x (clean, copy, webpack), that seems to be os/path related:
...
Running "copy:fonts" (copy) task
Verifying property copy.fonts exists in config...OK
Files: bower_components/font-awesome/fonts/fontawesome-webfont.* -> tmp/fonts/fontawesome-webfont.*
Options: encoding="utf8", processContent=false, processContentExclude=[], timestamp=false, mode=false
Copying bower_components/font-awesome/fonts/fontawesome-webfont.* -> tmp/fonts/fontawesome-webfont.*
Reading bower_components/font-awesome/fonts/fontawesome-webfont.*...ERROR
Warning: Unable to read "bower_components/font-awesome/fonts/fontawesome-webfont.*" file (Error code: ENOENT). Use --force to continue.

...
ERROR in ./app/scripts/views/dropdown-view.js
Module not found: Error: Cannot resolve module 'jquery/dist/jquery.min.js' in /Users/bad/zoo/keeweb/app/scripts/views
 @ ./app/scripts/views/dropdown-view.js 1:0-17

ERROR in ./app/scripts/models/menu/menu-option-model.js
Module not found: Error: Cannot resolve module 'backbone/backbone-min.js' in /Users/bad/zoo/keeweb/app/scripts/models/menu
 @ ./app/scripts/models/menu/menu-option-model.js 3:15-34
Warning: Task "webpack:js" failed. Use --force to continue.

You are using win8, right ?
What is the right way to run unbuild version in browser ?
Thanks

I'm using OX X as well (node.js v5, npm v3).
Does simply running grunt work for you?
There's no way to run unbuilt version, as source code require preprocessing. I use grunt and then grunt watch running in background to rebuild the app in tmp on changes.

I'm using OS X as well (node.js v5, npm v3).

Same for me: v5.7.0, 3.8.0, 1.7.7 bower

Does simply running grunt work for you?

Nope. After clear install npm & bower install with no any issues I've got an error:
Running "clean:dist" (clean) task
Verifying property clean.dist exists in config...OK
Files: dist, tmp -> dist
Options: force=false, no-write=false
ERROR
Warning: Cannot delete files outside the current working directory. Use --force to continue.

Aborted due to warnings.

There's no way to run unbuilt version, as source code require preprocessing

Is it possible to build source maps for dev purposes (having something like grunt build which is the current one and grunt default w/ sourcemaps) ?

Oh, that's interesting. How it could be possible?
Obviously there's no clean outside working directory here: https://github.com/antelle/keeweb/blob/master/Gruntfile.js#L60
It's possible but requires gruntfile tuning, I had some issues with sourcemaps, I don't remember which exactly.

Wow. My nodejs was v5.4. After upgrading it to v5.7 I get the same error. I'll go and post a bug in grunt-contrib-clean, if it's not yet posted.

Some has already did: https://github.com/gruntjs/grunt-contrib-clean/issues/85

Thank you :beer: ! Will switch to lower version for now (and google next time)

Back to the issue: I've asked a question about a flicker on return to hidden app window here: https://github.com/atom/electron/issues/4645
Let's see whether someone knows the solution. Fast googling gave no result...

So, electron issue was closed without providing any workaround.
I've tried to change window size, background, or execute javascript inside webContents but not, it didn't help. As a possible solution, we can invalidate window rect from low-level native add-on but this is very hard way.

New flag was added in Electron, v1.3 will make use of it.


Ignored deprecated functions for TooManyFunctions rule

Should detekt ignore deprecated functions per default or provide a config option?
reference #859

We should go for a config property as always. We are highly configurable :)


Titil bar not displaying electron 16.0.6

Describe the bug
Am new to electron. Not to be working when I place it in the renderer.js file
Error
ReferenceError: require is not defined at renderer.js:8 - is the error when I open devtools
Code
renderer.js
const customTitlebar = require('custom-electron-titlebar');

new customTitlebar.Titlebar({
	backgroundColor: customTitlebar.Color.fromHex('#444')
});

titlebar.updateTitle('My Menu');

const menu = new Menu();
menu.append(new MenuItem({
	label: 'Item 1',
	submenu: [
		{
			label: 'Subitem 1',
			click: () => console.log('Click on subitem 1')
		},
		{
			type: 'separator'
		}
	]
}));

menu.append(new MenuItem({
	label: 'Item 2',
	submenu: [
		{
			label: 'Subitem checkbox',
			type: 'checkbox',
			checked: true
		},
		{
			type: 'separator'
		},
		{
			label: 'Subitem with submenu',
			submenu: [
				{
					label: 'Submenu &item 1',
					accelerator: 'Ctrl+T'
				}
			]
		}
	]
}));

titlebar.updateMenu(menu);

index.html
<!DOCTYPE html>

  <meta charset="UTF-8">

  <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'">
  <meta http-equiv="X-Content-Security-Policy" content="default-src 'self'; script-src 'self'">
  <title>Hello World!</title>

Hello World!

  We are using Node.js ,
  Chromium ,
  and Electron .

Platform:

OS: [Windows]
Electron version [16.0.6]
Node Version [16.9.1]

Use a preload script and require the library there. For a minimal setup example have a look at custom-electron-titlebar-minimal-example
Which version of the titlebar are you using? It may not be compatible with the electron version you are on. Also you might need to have a look at your webPreferences in the main process.
But this is not a bug of the titlebar, but an error with the usage of it, so it would be more fitting in a discussion question

I can confirm it works in electron 16.0.6 in my project, so I also bet for what @timlg07  has said.
I have that portion of code:
new customTitlebar.Titlebar....
in preload.js script also


Implementation of SPDX version 3.0.0 spec

This is a HUGE pull request with a lot of breaking changes.
There are a number of additional dependent libraries which I plan to move to the SPDX github repo in the near future, so this is currently marked as a draft.
If you do want to attempt to compile and test, the additional repos are at github.com/goneall.
I'll update once the other repos are moved over.

@pmonks  - This is probably way to big of a pull request to review, but if you're available for a quick sanity check - I plan on merging and cutting an "Alpha" release of the library this week.
The upgrade documentation describes some of the changes.

@goneall I'm on vacation with limited cell / wifi until Sept 11th, but will be back then.  Maybe go ahead with the alpha (which I can also test when I get back in my own code), and I'll prioritise a review as soon as I can?

@goneall I'm on vacation with limited cell / wifi until Sept 11th, but will be back then. Maybe go ahead with the alpha (which I can also test when I get back in my own code), and I'll prioritise a review as soon as I can?

@pmonks - I'll go ahead with the Alpha.  I'll also sign up a couple other users of the library for a review after the alpha release.  Enjoy your vacation!


Add a Gitter chat badge to README.md

jhalterman/failsafe now has a Chat Room on Gitter
@jhalterman has just created a chat room. You can visit it here: https://gitter.im/jhalterman/failsafe.
This pull-request adds this badge to your README.md:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Coverage remained the same at 84.089% when pulling 952cee9d404ae36ddb7457b65db35249fc3a03dc on gitter-badger:gitter-badge into fb0be99c3d17ae1eb887ea0334c26d1dc49d86e2 on jhalterman:master.


Allow to specify http Basic auth credentials for hydra endpoint

Q
A

Bug fix?
no

New feature?
yes

BC breaks?
no

Deprecations?
no

Tests pass?
yes

Fixed tickets

License
MIT

Doc PR
None (at the moment)

Hi all, today I ran across the need for generating code from an endpoint protected with HTTP Basic Auth. Thus, I've modified the main index.js to allow specifing Basic auth credentials from the command line. Unfortunately, I saw that only the hydra parser accepted an options parameter, so I was able to add it there only.
In order to allow the new Headers() call, I also had to edit ESLint settings to allow for the browser env. I'm not sure if this is ok for you or not, so let me know if there's another way to do it.
If this is the way to go, I think I might be able to adapt api-doc-parser to enable an options argument for the other 2 formats as well.
yarn test output:
┌─[±][hydra-basic-auth → origin ✓][client-generator][]
└─▪ yarn test
yarn run v1.19.0
$ jest
 PASS  lib/generators/TypescriptInterfaceGenerator.test.js
 PASS  lib/generators/NextGenerator.test.js
 PASS  lib/generators/VueGenerator.test.js
 PASS  src/generators/TypescriptInterfaceGenerator.test.js
 PASS  lib/generators/QuasarGenerator.test.js
 PASS  src/generators/VueGenerator.test.js
 PASS  src/generators/QuasarGenerator.test.js
 PASS  lib/generators/ReactNativeGenerator.test.js
 PASS  lib/generators/ReactGenerator.test.js
 PASS  lib/generators/AdminOnRestGenerator.test.js
 PASS  src/generators/ReactGenerator.test.js
 PASS  src/generators/ReactNativeGenerator.test.js
 PASS  src/generators/NextGenerator.test.js
 PASS  src/generators/AdminOnRestGenerator.test.js

Test Suites: 14 passed, 14 total
Tests:       18 passed, 18 total
Snapshots:   0 total
Time:        3.858s
Ran all test suites.
Done in 4.78s.

Awesome, thanks! In the future it would be nice to also allow to pass random headers through the command line (such as a raw Authorization header).


Issue 919: Upgrade Spring Boot to 2.1.0 version

Fixes #919.
This version disables bean overriding by default, so setting spring.main.allow-bean-definition-overriding to true is needed.

@fuss86 / @sbespalov ;
Could you please review this? Thanks! :)

Thanks for your help! :)


error when training by cifar10

Hi，I try to rerun this code to test this model's performance by using the 'python3.6 main.py --cfg cfgs/cifar10/aognet_cifar10_ps_4_bottleneck_1M.yaml --gpus 1,2'.At first everything seemed to be going smoothly，however，when it comes to epoch 280，it is stoped by an error：
Traceback (most recent call last):
File "main.py", line 133, in
main()
File "main.py", line 120, in main
epoch_end_callback = checkpoint)
File "/home/amax/anaconda3/lib/python3.6/site-packages/mxnet/module/base_module.py", line 575, in fit
callback(epoch, self.symbol, arg_params, aux_params)
File "/home/amax/anaconda3/lib/python3.6/site-packages/mxnet/callback.py", line 89, in _callback
save_checkpoint(prefix, iter_no + 1, sym, arg, aux)
File "/home/amax/anaconda3/lib/python3.6/site-packages/mxnet/model.py", line 409, in save_checkpoint
nd.save(param_name, save_dict)
File "/home/amax/anaconda3/lib/python3.6/site-packages/mxnet/ndarray/utils.py", line 273, in save
keys))
File "/home/amax/anaconda3/lib/python3.6/site-packages/mxnet/base.py", line 252, in check_call
raise MXNetError(py_str(LIB.MXGetLastError()))
mxnet.base.MXNetError: [09:52:25] src/io/local_filesys.cc:39: Check failed: std::fwrite(ptr, 1, size, fp) == size FileStream.Write incomplete
I can't find the suitable solution to deal with this problem.So could you please tell me how to solve this problem?

sorry, I didn't have this problem before. It seems like an error to save checkpoint to file.
Anyway, the code is based on old version of mxnet. The results cannot match the results reported in the paper. We'll release our new pytorch code very soon. Stay tuned.


ColorTool: Background color not working correctly

ColorTool is not setting the background color correctly when I use it. I've tried the built-in themes and also my own .itermcolors files and they all end up varying shades of purple and pink.
Windows 10
Version 1703
Build 16251.1002

So up until very recently the console only supported 16 colours at a time. When the PowerShell team decided they wanted a very specific dark blue as the background colour, rather than altering the colour value for dark or light blue, they instead changed dark magenta to blue and used that as the background colour. I'm not precisely sure why they did this, there's probably some reasoning floating around on the internet somewhere. As a side note, they also changed dark yellow to a light grey and used that as the default foreground for some reason; again, I'm not really sure why.
The end result is that colortool is changing the colours correctly, the problem is simply that PowerShell gets its background colour from a different slot in the colour table.

You can of course fix this yourself by setting the screen background manually in the properties window. As for fixing it in colortool, I'm not sure how or if we should do that. It might be as simple as checking if the parent process is powershell, and if so, setting these registry values to 0x07 (or something similar):
Computer\HKEY_CURRENT_USER\Console\%SystemRoot%_System32_WindowsPowerShell_v1.0_powershell.exe\ScreenColors
Computer\HKEY_CURRENT_USER\Console\%SystemRoot%_SysWOW64_WindowsPowerShell_v1.0_powershell.exe\ScreenColors

But that doesn't take effect until the window is reopened; I'm not sure how to change the screen background for the currently open window.

🤔 Very interesting. Thanks for the detailed response.

Looking at an itermcolors file, this is not quite possible with the current conhost. There are colors 0-15 listed, but there are also separate foreground and background colors, which are not selected from the standard palette. There are others (cursor, cursor text, selection, selected text, and bold) - it'd be nice to have support for setting all of these separately, but top priority for me would be foreground and background. We won't have true itermcolors support until conhost can set those colors independently from the standard 16-color palette.
Compare the screenshot to the ones shown here. In the screenshot in this thread, either the 40m column or the 45m matches the background. That is not the case in any of the screenshots for the link I provided.

The fix is simple and I would love to see the colortool do it automatically.

Open a PowerShell windows using the shortcut or command you would normally used.
Use the colortool.exe to set the colors (with the -c, -b or -d options as appropriate)
In the command window border open right click menu Properties for this instance (or Defaults for the settings for new windows not already associated with a shortcut.)
In the colors tab select "Screen Text" and associate with the right most color box (white)
In the colors tab select "Screen Background" and associate with the left most color box (black)
In the colors tab select "Popup Text" Select the popup text color you want... I choose the default gold
In the colors tab select "Popup Backgroundd" select the right most color box (white) and save

The default Text and Background colors could and should be selected by the colortool as they are just another registry setting being set.  It would be reasonable to optionally not set them with another flag but in most cases where people are using colortool they don't want a bright pink/purple background in their PowerShell windows!!!

That would definitely help, but it still doesn't fix the scenario where a theme defines two similar colors with a separate background color. In iTerm the default background color (same with default foreground) is a different setting than any of the colors settable through escape sequences. The only real fix for this is for the Windows console to also provide totally separate foreground/background color options.

As you've all mentioned here, essentially, the console doesn't have a separate "Background Color" separate from the color table - it uses one entry of the color table as it's "background color". So if the itermcolors scheme has a different background color from the black color, then the applied scheme is going to look different. It's as close as we can get to what's in the scheme with what conhost can do.
I absolutely want to fix this, but unfortunately its a pretty massive change to the codebase that'd be hard to get signed off on.
I will keep this issue open to track the feature request, hopefully we'll find some time to do it.

Understandable. No worries, and thanks for looking into this.

Hello friends,
Will it be acceptable if we calculate the nearest color in a slot to the background, and set the background to that slot?
Also we can apply subtle adjustments to the color scheme itself to keep everything as close to the original as possible.
This is obviously just a workaround but does not need a lot of effort in the backstage. Essentially we are only trying to approximate 18 colors with 16. There's been a vim plugin for approximating a 256 color theme with only 16 colors so I think this approach will definitely work out.

Obviously, setting the background color independently of the 16 color
palette is the true fix. But that's a change in Window's console that can
take a very long time to materialise and land.
But before that, there are some improvements that can be made to make
colortool quite a workable solution.
For starters, it needs to gain the ability to set the background/foreground
color index from the 16-color pallete at all. So as to avoid the issue with
Powershell, and be able to restore the powershell default theme. I'm not
sure if there is a public API for this currently though.
Secondly, it needs handling for console settings saved in shortcuts (lnk)
files, either by wiping them, or saving settings to them (Preferably as a
command that can be used on user created shortcuts in addition to any
hardcoded list of default shortcuts). The similar concfg project has a
command to wipe them.
Third, it needs handling for the multiple saved console settings in the
registry. Allowing to set a color scheme globally but maybe even better is
a way to list, delete, etc. such settings.
For selecting the background/foreground color to set. You can always decide
to extend the color scheme files that you use. I don't think you are bound
in any way to support some upstream color scheme format exactly. This gives
the users the control to adapt a theme to this Windows console limitation
in the best way they see rather than trying to guess around that.
Guessing/Auto detection can be used for color schemes that don't use such
extensions to give a better result still. But that sounds like something
you add after the basics work well.
On Tue, Feb 13, 2018 at 6:18 AM, Yatao Li<EMAIL_ADDRESS>wrote:

Hello friends,
Will it be acceptable if we calculate the nearest color in a slot to the
background, and set the background to that slot?
Also we can apply subtle adjustments to the color scheme itself to keep
everything as close to the original as possible.
This is obviously just a workaround but does not need a lot of effort in
the backstage. Essentially we are only trying to approximate 18 colors with
16. There's been a vim plugin for approximating a 256 color theme with only
16 colors so I think this approach will definitely work out.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/console/issues/23#issuecomment-365146331,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXlg__rSAUN1-tEiMbE7VZPpeQcJFN8Bks5tUQ0ngaJpZM4PDiaR
.

I'm not going to be able to commit to being able to set the FG/bG independently from the color table. I'd LOVE to implement it, yes, but yea, it's a lot of work.

Yes, setting the FG/BG indicies with colortool would be a welcome improvement. Adding entries to the .ini format wouldn't be hard, setting the colors themselves would be easy, and finding the nearest color from a .itermcolors file would be relatively trivial as well. I'd welcome the contribution.

Right now, if you use colortool to set the console properties, then open the propsheet and hit okay, they'll persist to the shortcut if you were launched from a shortcut. I'd say that wiping shortcut entries is not really in the scope of the colortool project. I'd rather keep it more focused.

That's a bit bigger of an ask, it'd be a pretty major enhancement of our settings infrastructure. Man, if only I had a spec for such a feature, like, maybe sitting in a file share somewhere, ready to implement.... cough @bitcrazed cough

TLDR if someone wants to implement finding the nearest table entry to the itermcolors fg/bg and set the selected fg/bg to that, I'd welcome the PR.

@zadjii-msft there you go: https://github.com/Microsoft/console/pull/66

I'm using the October 2018 release and the background colors are still very much not what they should be. This is also with Microsoft Windows [Version 10.0.17763.134] and the stock ubuntu.exe terminal.
For example, I want to use the Tomorrow scheme which is a light background theme, but ColorTool is using a completely different color scheme than what Tomorrow is defined as in the XML file.
Here's a screenshot of a bunch of schemes I downloaded (just to experiment):

But here's what Tomorrow should look like: https://github.com/mbadolato/iTerm2-Color-Schemes#tomorrow
Any ideas on how to get around this?

Could you be more specific? I mean, this looks like it's just fine to me:

Do you mean the "default" foreground and background colors from the itermcolors file? (I think the background is defined under `Background Color
*Nix style terminals support foreground and background colors outside the values from the color table, but conhost doesn't support that unfortunately. With conhost, the fg/bg colors must be an index into the color table, so we ignore those values from the itermcolors file.
Stay tuned in this area - we might have some news soontm

Specifically, with the ubuntu.exe terminal and not modifying anything extra in the Properties:

Download https://github.com/mbadolato/iTerm2-Color-Schemes/blob/master/schemes/Tomorrow.itermcolors

Place the file into the ColorTool's schemes/ folder

Run ./ColorTools -b Tomorrow

Open a new terminal

I end up with a black background and the colors do not match the white background that is supposed to show up with the Tomorrow theme. Every single iTerm2 theme listed in that git repo with a white background ends up with a black background.
What would I need to change on my end to get the correct foreground and background colors to take effect today?

Suffering in a workplace where I can't download colortool - boo.
Having said that, having a page in the settings where you could choose from colour themes would be a lot nicer than clicking around and editing individual colours.

@nickjj Up until recently, the Windows Console didn't support "default colors" separate from the rest of the color table. So, if your selected default background color was black before running colortool, it'll still be black after running colortool, just with whatever the new entry for black is.
Even though we've experimentally added support for true terminal-style default colors (in recent Insiders builds), Colortool hasn't yet been updated to add support for them yet.
@stuaxo We definitely feel the pain too, but unfortunately adding support for proper color schemes w/in conhost itself is unfortunately far down our backlog :(. It's just too much work to justify compared to other higher priority work items.

Cool, well if it's actually on the backlog that's nice - hopefully it'll arrive one day as a pleasant surprise.
What triggered this is, that at my workplace there is some setup with powershell->docker->??->a bash shell.
Sometimes I'll be in vim editing a file and the foreground and background are the same for some colours:
(unless I'm being colourblind??)
The bit between psql and -c is actually the string $POSTGRES_URL

The setup is all a bit locked down (the shell is launched by divio client, then the file is in another docker-layer).    I end up editing the file then cating it to see if it's correct.
Since I'm in some ephemeral container, editing the vim config is tricky ... I assume that if this was running under a terminal like vte I wouldn't have the issue + it probably comes down to limitations in the windows console host.

@stuaxo How about this trick? Run the colortool in your PC/Laptop. Export and Copy HKCU\Console registry key to your workplace and import that registry values.

Cheers I'll give that a go on monday.   The worst thing about the colourscheme shown is the dark blue with red on top - I just can't read most of the things that appear like that - I assume it's some powershell default ?

Oh, that's definitely because the powershell background color, the "powershell blue" is actually using the "dark_magenta" table entry.
Powershell's default colors are totally wonky. I'd personally change the properties for your powershell window from having "dark_magenta" as the default background to the "black" entry.
As an example, compare my cmd vs powershell settings:

Cmd on the left has the 0'th index set as my default background, while powershell has the fifth index, which is magenta in cmd, but powershell has overwritten with dark blue.
The "invisible text" that your seeing (or not seeing in this case) is because vim is printing the text in dark_magenta, which doesn't appear against the dark_magenta background.

OK, cheers - I'll try this when I get back - I grew up on DOS/Windows but these days Linux is my day-to-day, feels weird going back to Windows (and seeing this console properties box thats been the same since about Windows 3!)


fix(subgift): ensure msg-param-months is present

Default to one month instead of zero so the tag is actually sent (was causing NumberFormatException for us when absent)
Bug found by @Mrbysco

Another possibility is to create a tenure or cumulative variable that the user can specify to simulate different values


Why does visjs need an unique uuid library?

Why not depend on one of these for example? https://github.com/grantcarthew/awesome-unique-id#generation

To be honest I've never though about it. This is how it was when I came. Right now I can't think of any reason. Maybe @yotamberk or @mojoaxel would know about something?
Maybe we could switch to https://github.com/uuidjs/uuid (which implements the same RFC as we do here) as a part of https://github.com/visjs/vis-dev-utils/pull/10 transition. I highly doubt many people, if anybody at all, depend on this directly so nobody will most likely care. It would be one package less to worry about.

The short answer: There isn't a reason... At the time there was no good library for creating uuids so vis created a library for it. This can probably be removed and use a more common uuid generator

Thanks for clarification. I'll purge it from the codebase then.

Thanks for clarification. I'll purge it from the codebase then.

:+1:


Drag and click nodes

Hello dear react flow team,
we are currently working on the interaction to move the diagram for our users. There are multiple ways to move the position of the diagram and we are trying to find the most native implementation possible. Therefor our users can interact with our diagram on mobile as well as on desktop devices. To move the diagram around it is possible to drag the pane and move the diagram where desired. The only thing that we cannot yet achieve, is the dragging of the diagram if you touch a node instead of the pane. For example, if a user interacts on a mobile phone, it is common that you can drag everywhere on a draggle area. By now our users need to avoid, trying moving the diagram by accidentally selecting a node and can instead only touch in between nodes. I am aware that there is an option called elementsSelectable that we can set to false. This would be the perfect behaviour if we only had representational nodes. In fact our interaction on click of the nodes is essential to our application. We show the data of this node to view and change it accordingly. Is there somehow a way that it would be possible to track down an onClick as well as an onDragStart event for nodes to get the desired effect?
Thanks in advance

The only thing that we cannot yet achieve, is the dragging of the diagram if you touch a node instead of the pane.

Are you trying to track the movement of a node and programmatically pan the canvas when the node is dragged towards an edge or dragged off the screen?  If so, you can track the mouse position in onNodeDrag against .react-flow element's BoundingClientRect and programmatically pan the canvas via
const d3Zoom = useStoreState((s) => s.d3Zoom);

const onNodeDrag = (event, node) => {
  //logic to determine the direction and how much to pan based on drag
  d3Zoom.translateBy(
              d3Selection,
              -(deltaX / currentZoom) * panOnScrollSpeed,
              -(deltaY / currentZoom) * panOnScrollSpeed
            );
  ...
}

You can reference ZoomPane component src code for how to pan the canvas and DragNDrop example for how to obtain the mouse position in onNodeDrag.

In fact our interaction on click of the nodes is essential to our application. We show the data of this node to view and change it accordingly. Is there somehow a way that it would be possible to track down an onClick as well as an onDragStart event for nodes to get the desired effect?

As far as detecting when a node is clicked, you can use built-in onElementClick interaction.  However, be warned that both onElementClick and onNodeDragStart gets fired at the same time and what differentiates node click from node drag is whether the node is moved after the click (in other words, a node drag will subsequently trigger the onNodeDrag event while node click won't).  For this reason, I would suggest creating a custom node with a <div onClick={...}> instead of relying on onElementClick to trigger the node click callback.

Hey @dominikspiertz, if I understand correctly, you want the pan by click and dragging to work everywhere on the pane, even if the click happens inside a node, but you also want the nodes to be clickable.
This is not straight forward to do in React Flow, I have a solution for you, but it has its drawbacks.
In order for React Flow to allow panning in the whole pane, no matter where clicks happen, it needs to not have any elements listening to mouse events, this includes clicking, scrolling, hovering, etc. To do this, you need to set the following to false in your ReactFlow component:
<ReactFlow
      elements={elements}
      ...
      nodesDraggable={false}
      nodesConnectable={false}
      elementsSelectable={false}
>

With this, you should be able to pan around everywhere on the pane. If not, make sure you don't have custom elements with onClick events or CSS rules like pointer-events: all.
Now, in order to have the nodes clickable, we must create a handler for onPaneClick that will read the mouse click coordinates, convert them to the same coordinate set as the nodes, and check whether the position intersects any of the nodes bounds. Something like the following:
const { project } = useZoomPanHelper();

...

const onPaneClick = (event) => {
      const boundingBox = event.target.getBoundingClientRect();

      const viewport_x = event.pageX - boundingBox.left;
      const viewport_y = event.pageY - boundingBox.top;

      const { x, y } = project({ x: viewport_x, y: viewport_y });

      ...
}

If your ReactFlow pane's top left corner matches the browser window, then you don't need to get the boundingBox and you can directly project the pageX and pageY coordinates.
Once you have these coordinates you just need to iterate through all your nodes and see if it collides with any node bounds.
I created a codesandbox with a simple example that should be enough to get the picture.
Now, this has two main drawbacks that may or may not be an issue in your use case:

Every time a user clicks the pane you will be checking for collisions in all your nodes. If you're dealing with less than a few hundred nodes it really shouldn't affect performance. But as the number increases it can become more of a problem. However, if you graph has some sort of structure where you can take advantage of a divide and conquer approach, you can work around this issue.
Perhaps the biggest issue is that you can't have any sort of other interactions between mouse events and the elements. This means you can't have node/edge dragging, add/delete connections, on hover effects like tooltips, scrolling inside nodes, etc. Again, for your use case, this might not be an issue at all, but it's something to be aware.

Hope this helps!

I am now running into a similar problem. I want the user to be able to drag to pan anywhere on the screen, including on nodes, but I still want nodes to be selectable and register hover.
So, if you start dragging over a node, it'll pan, but if you click the node it will become selected, and hovering also works.
This behavior seems relatively complex, but would it be doable?

In fact, NoPanClassName is added to node by default so panning does not allowed on nodes.
// src/components/Nodes/wrapNode.tsx
const nodeClasses = cc([
      'react-flow__node',
      `react-flow__node-${type}`,
      noPanClassName,     // here
      className,
      {
        selected,
        selectable: isSelectable,
        parent: isParent,
      },
]);

// src/containers/ZoomPane/index.tsx
// event.type === "mousedown"
if (isWrappedWithClass(event, noPanClassName) && event.type !== 'wheel') {
        return false;
}

Is it possible to optionally add class names to Node or Edge.
This allows to pan on the node when panOnDrag is set to true while nodesDraggable and elementsSelectable are both false .
Here is a possible use case.
const [mode, setMode] = useState(1)
<ReactFlow
    nodesDraggable={mode === 1}
    elementsSelectable={mode === 1}
    panOnDrag={mode === 2}
    possibleAttribute={mode === 2}
    >
</ReactFlow>

@datoslabs We're looking for the ability for nodes to be selectable, while also panning the screen when clicking+dragging on the nodes, not dragging the nodes themselves.

Please disregard my previous comments, @Holybasil's recommendations/findings would work if implemented.

Does not seem to be working for me when onNodeClick is specified, I had to manually remove the nopan class in order to be able to trigger click events on the nodes while also be able to pan a group node for example.

This behaviour will change with the next major release. From v11 on it will we possible to drag the pane when a nodes are not draggable. Either because the node option draggable is false or because nodesDraggable is false. Would this solve your issue @dominikspiertz ?

how can i test this fix in a project of mine that is currently using v10? it seems like #2370 is related to this


can I hide the search bar in VS Code Insiders?

Is there a way to hide this search bar in VS Code Insiders? I never use it and when I need to click to drag the window around there is really small real estate

That is the Command Center and can be disabled vai the setting Window: Command Center.

ah, so much better, thank you!

@claudiaregio You should close this issue if that resolved it for you.

I'll wait for @meganrogge who was assigned to decide, in case she wants to use this feedback for anything else

You can also right click on the Command Center to hide it. The "Launch" word is a bug. We'll get that removed.

Ah ok, thanks David :)

Closing given the discussion above 👆


Run two or more assemblies on classify for kbase

Hi!
I want to analyze some samples (a genome set) in the same narrative of kbase, but I cannot load all the files in the same line (Assembly input text-box), can you guide me, to perform this...
Thank you in advance
Diego

Hi Diego,
Could you please make a ticket on our help board? We consolidate all our user support there. Thanks!


Promise then/awaited nested unwrap inconsistency

🔎 Search Terms
Promise then awaited inconsistency await nested
🕗 Version & Regression Information

This changed between versions v5.3.0-dev.20230902 and 3.3.3

⏯ Playground Link
https://www.typescriptlang.org/play?ts=5.3.0-dev.20230902#code/C4TwDgpgBAonUF4oAUBOB7AtgSwM4QB40s9DdhVsA7AcwD46AoRgGwmCggC5Y5mAKAIa4QVAMZR+ASkR0oAb0ZRlUMeirlOEaEkEB3Qdg4QlKgPRmooSOgBmUcpVqMAvlOnMIAOmAALCFT8-NoQMghyiipQFlbgEHYoGDj4BI7U9K5SjEA
💻 Code
type EEE = Promise<Promise<string>>

let e: EEE

(async () => {
    const eee = await e
    // typeof string
})()

e.then((eee) => {
    // typeof Promise<string>
})

🙁 Actual behavior
When unwrapping nested promises with .then the resulting type is not deeply unwrapped, just the first layer.
🙂 Expected behavior
Similar to other methods of unwrapping promises (e.g. await) it should deeply unwrap the value nested inside two or more promises
Additional information about the issue
Nested promises are automatically unwrapped all at once at runtime. The Awaited type reflects this. Typing for the runtime code Promise.resolve(Promise.resolve("string")) as well as the await keyword resolve this correctly.
It is possible however to construct a type as follows: Promise<Promise<string>>. This should be resolved to string using all methods to unwrap promises. This does not work for then currently. The issue is clearly apparent in lib.es5.d.ts.

Duplicate or related to https://github.com/microsoft/TypeScript/issues/47593 and/or https://github.com/microsoft/TypeScript/issues/52764.


Rename "My Skills" to "My Progress"

PR: #331

@sudo-may you probably want to merge #325 and then this ticket


Loading indicator is misplaced when loading a process

Describe the bug
Loding spinner is not places in the center when loading a process.
To Reproduce
Steps to reproduce the behavior:

Go to a process
Refresh the browser tab
The loading spinner is located at the bottom of the page and not in the center

Expected behavior
I extect the loading spinner to be in the center of the page so that everyone can see that the process is loading and you don't just see a blank screen.
Development checklist

[x] Threat Modeling

@SayyareHamit This is ready for test in either poc-dev or poc-qa

Bug: Only half of the canvas is darkened when opening sidebar

Should be fixed now

Works good both on poc-dev and poc-qa. @nesadrian


Adding Async to Vonage SDK

This PR adds async functionality to the .NET SDK. As simply changing all of the sync methods -> async would be a BC, and you can't overload sync methods with async methods, all of the sync methods are preserved, and the Async methods are, by convention, named OriginalFunctionNameAsync.
As the logic for async/sync are similar - save all sync methods are now tied directly to their async counterparts. The sync methods call the async methods with the GetAwaiter().GetResult() technique to maintain error propagation. The ApiRequest class (which does all the low-level calls) has been refactored along similar lines, however in this case the low-level io-bound calls properly uses the async/await pattern to allow consumers of the SDK to write their code truly asynchronously

Codecov Report

Merging #223 into master will decrease coverage by 2.77%.
The diff coverage is 27.34%.

@@            Coverage Diff             @@
##           master     #223      +/-   ##
==========================================
- Coverage   89.89%   87.11%   -2.78%
==========================================
  Files         385      385
  Lines       11304    11582     +278
  Branches     1100     1227     +127
==========================================
- Hits        10162    10090      -72
- Misses        968     1165     +197
- Partials      174      327     +153

Impacted Files
Coverage Δ

Vonage/Conversions/ConversionClient.cs
58.97% <0.00%> (-41.03%)
:arrow_down:

Vonage/Redaction/RedactClient.cs
19.23% <0.00%> (-12.02%)
:arrow_down:

Vonage/ShortCodes/ShortCodesClient.cs
12.19% <0.00%> (-2.96%)
:arrow_down:

Vonage/Verify/VerifyClient.cs
52.68% <0.00%> (-38.06%)
:arrow_down:

Vonage/Voice/VoiceClient.cs
49.72% <0.00%> (-41.28%)
:arrow_down:

Vonage/Request/ApiRequest.cs
66.04% <22.80%> (-10.55%)
:arrow_down:

Vonage/Numbers/NumbersClient.cs
58.90% <34.78%> (-41.10%)
:arrow_down:

Vonage/Accounts/AccountClient.cs
50.61% <68.75%> (-49.39%)
:arrow_down:

Vonage/Applications/ApplicationClient.cs
50.00% <75.00%> (-50.00%)
:arrow_down:

Vonage/Messaging/SmsClient.cs
80.00% <75.00%> (-20.00%)
:arrow_down:

... and 9 more

Continue to review full report at Codecov.

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


Add former flexibility in JS execution defaulted-out by new CSP

What
The addition of a Content Security Policy prevents, by default,
the execution of inline scripts from other domains and the
evalution of strings as JS. The intention of the CSP (for now)
was simply to restrict which domains scripts could be downloaded
and executed from.
This commit re-introduces the ability to do both.
Why
To enable execution of Google Analytics scripts.
Link to Trello card (if applicable):
https://trello.com/c/wy54K9rM/2263-analytics-on-admin-user-journeys

Closed in order to separate CSP work from Google Analytics implementation.


Doc: What templating language does cargo generate use?

What templating language does cargo generate use?

OK, this is information is buried at the end of a paragraph, half way down the templates page.
Would you accept a PR moving this information:

to the README.md and
to the introduction page

I for one would welcome the PR - especially if you also put a link to the scripting language rhai, which is also utilized as part of the templates

Per this comment - we don't have bandwidth to help flesh out any additional functionality in this issue.


default zulip plugin for jenkins outdated and no hint about the recent one ?

could somebody explain the difference between this one https://github.com/jenkinsci/zulip-plugin and this one https://plugins.jenkins.io/humbug ?
apparently , the first one appears to be a more recent version - but why does zulip docs at https://zulip.com/integrations/doc/jenkins  point to the old release and jenkins also installs this 3-years old one per default ?
we want per-project notifications and wondered why it wasn't possible with the plugin - just to see that the reason for that may be the outdated plugin version offered for installation with jenkins install.
we ar trying the recent version now....

@devZer0 the story here is that uploading the updated plugin has been stuck in Jenkins-upstream beaurocracy.  You definitely want the new one.
@butchyyyy we should try to push more on getting the migration finished...

Things finally moved ahead on Jenkins side last week, but since we optioned to change the artifact id of the plugin i have to put in some more work to make the upgrade as seamless as possible (automatic upgrades to the new artifact id, peeps not loosing existing configuration etc.).
I hope to publish the new plugin next week.

The new Zulip plugin https://plugins.jenkins.io/zulip is now published and available in the update center (if you don't see it, manually upgrade the plugin index by going to Jenkins -> Plugin Manager -> Advanced -> Check now).
If you're using the old plugin (humbug), an update to version 0.1.4 should be available and it will automatically install the new plugin as a dependency. You can then remove the old one.
You can also uninstall the old plugin and install new one instead of upgrading.
In both cases, the plugin should use settings from the old one.
If you run into any issues with the new plugin, please create an issue here https://github.com/jenkinsci/zulip-plugin

Awesome, thanks for taking care of this @butchyyyy!  I guess the next step to close this issue is we should edit templates/zerver/integrations/jenkins.md in this project (aka /integrations/jenkins) to link to the new plugin?

Yeah, wanted to squeeze it in today, but did not manage. It's in my todo list for tomorrow.
The docs only links to the github repo and since it was moved it still works (Github redirects to the new location). Anyway, we should still change the URL.
There are other refinements to do like changing debug namespace from hudson.plugins.humbug to jenkins.plugins.zulip.
Once it's done i'll reference the PR here.

#11478 opened.


Update Documentation

[ ] Testing imports work on install...

Moved functions to different files based on type... The code was getting messy and needed better organization.

check passed with 1 note - ignoring for now, no impact on usage


Use transclude scope for inline node templates

I'd like to see what it would take to get rid of the need for wrapping transcluded node templates in a script tag so that folks can use functions/variables in the transcluded scope within their templates.
E.g. this:

Instead of this:

Currently the former will generate a number of compilation errors.
See #70

Hi, I have player around with the node templates and the tree compilation, and I haven't found a way to get rid of the wrapper of the transcluded templates (either with a script tag or with ng-include)
On the other hand, I could finally find a solution to use the transcluded scope in the node templates, obviously, because of the script or ng-include wrapper mentioned above, the way to have access to the transcluded scope is with $parent, like this (following the example of your comment):
`

`

That's interesting. I wouldn't want to advocate using $parent in templates directly but if we can transparently expose that scope to the template I'd be on board :).

Yes, the transcluded scope is transparently exposed (because the new scope prototypically inherits from that).
And regarding the $parent, I know, I don't feel 100% comfortable using it neither but this is due to the script or ng-include wrapping the template. As soon as I try to remove it, there is a compilation error due to the ivhTreeview directive being required, maybe something to do with the order in which the directives are compiled.
If we find a way to get rid of such wrapper then it would be great but so far this is the best I could do.

Hi, do you think this feature could also be part of the v2? If so, I can submit the corresponding PR.

I'd love to get this in v2, we'd just want to make sure we got appropriate tests added as well.


Static fragment defs aren't compatible with static propTypes {} syntax.

One disadvantage of the convention to declare fragments as static members of the component is you can't reference these from static propTypes {} member functions. Also, while the fragments proptype is useful, it sort of "infects" the component (whereas, graphql and redux's connect go to pains to leave the component alone; but I don't see how you could have both...)
So the following is the path I took:
export const ItemFragments = {
  item: new Fragment(gql`
    fragment ItemFragment on Item {
      id
      title
    }
  `)
};

export class Item extends React.Component {
  static propTypes = {
    item: ItemFragments.item.propType
  };
  render() {
    let { item } = this.props;
    return (
      <div>{ this.props.title }</div>
    );
  }
}

Basically we didn't specify a convention at all, but a lot of people were really adamant about wanting to attach their fragments to a specific component.
So you can't do Item.fragments.item.propType if you use a static property?

@richburdon could you make fragments a static class property too?

Also, while the fragments proptype is useful, it sort of "infects" the component (whereas, graphql and redux's connect go to pains to leave the component alone; but I don't see how you could have both...)

Can you say a little more about what you mean by this?


Add support for XML FindBugs reports

I've added two more (unrelated) tiny cleanup commits.

Hey,
thanks for contribution. Could you reopen this pull request on develop branch please?

Ups, sorry, this was indeed meant to go to the develop branch. Here's the new PR: https://github.com/dlabs/soter/pull/10.


Allow triggering gh actions manually & fix poetry install

As documented in https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow

👍