Migrated translation plugin to Documentation-as-code

I have migrated all docs to Github.
Links
https://github.com/jenkinsci/translation-plugin/pull/21

Thanks for your contribution! i will need to polish this documentation later a bit to reflect the current state of the plugin, but it is a great foundation work for the migration
@all-contributors please add @nlk35 for documentation


Allow waveform.set() to be called before iocInit()

Fixes #21.
With CGP-182 (944e072), waveform.set() was modified to use the dtype attribute, which is only created after softioc.iocInit() is called.
This change adds a default for dtype, preventing this issue.

@thomascobb , didn't realise our CI was so broken!  I asked @MJGaughran to make this a pull request so that CI would give it a sanity check ... but that seems to be a bit busted 😞

Am happy with this, but will wait for CI to be fixed I guess...

PR #20 contains both documentation fixes and fixes for the CI. Once that's merged this should clear up. It's also pending review at the moment.

I'll make a couple of docs tweaks to #20 then merge it

I added a test too and merged in master


Deleting Art

As a user,
I want to be able to delete my artwork from the gallery, So that I can remove content that I no longer wish to share.
Acceptance Criteria:

[ ] Users can access a "Delete" option for any artwork they have uploaded.
[ ] The app prompts the user to confirm the deletion before proceeding.
[ ] Once confirmed, the artwork is permanently removed from the gallery.

Delete html is in place just need to add buttons to image_detail and gallery when authenticated user is == image owner

completed


Add recent Perl distributions to registry

This commit also includes an update to the Perl API entry, that incorrectly reported its license as Apache.
I made some efforts to keep to the style of similar entries in the registry, but please let me know if this could be improved.

/fix:refcache

Oh, thank you! I was going to spend some time this evening trying to figure out how to get a recent-enough version of Node running on this machine, but you beat me to it :)


Add technolog.edu.ru

I found out that the domain of my university has stopped working and it is not in the list.

@verigal First stage of verification passed, official domain is technolog.edu.ru as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.


Add timestamp to scope logs

Add timestamp to scope logs in RFC 3339 format.
Closes https://github.com/criblio/appscope/issues/534
QA INSTRUCTIONS
Part 1
Do:
$ SCOPE_LOG_LEVEL=debug scope top

Ctrl+c
$ scope logs

Expect:
You see timestamps in the logs:
Scope: top(pid:83214): [2021-10-20 17:48:33.972] fd:5 lseek
Scope: top(pid:83214): [2021-10-20 17:48:33.972] fd:7 lseek
Scope: top(pid:83214): [2021-10-20 17:48:33.972] fd:4 rewind
Scope: top(pid:83214): [2021-10-20 17:48:36.974] fd:6 lseek
Scope: top(pid:83214): [2021-10-20 17:48:36.974] fd:5 lseek

I have two review comments...

We should check the return codes of gettimeofday() and localtime() and maybe strftime() to make sure that the timestamp fails gracefully (prob. defaulting to an empty string if any of these fail?)
The other is that localtime() is not reentrant, and scopeLog() is called by any number of simultaneous client threads.  I'm not sure if this might be the cause of the instability we've seen in the CI pipeline, but it seems like it's possible.  I'm going to commit an update to use localtime_r() and gmtime_r() instead of their non-reentrant versions...  Just to see if we can see a meaningful difference in the CI pipeline behavior.


Error on installing in docker file (Could NOT find PythonLibsUnix (missing: PYTHON_INCLUDE_DIR   PYTHON_INCLUDE_CONFIG_DIR))

Thanks for your help. The following error occurs when trying to execute build.sh:
Step 9/11 : RUN mkdir ~/blender-git/blender_build &&     cd ~/blender-git/blende                                                                                r_build &&     cmake ../blender         -DPYTHON_INCLUDE_DIR=$(python3 -c "from                                                                                distutils.sysconfig import get_python_inc; print(get_python_inc())")          -D                                                                                PYTHON_LIBRARY=/usr/lib64/libpython3.6m.so         -DPYTHON_LIBPATH=/usr/lib64                                                                                -DWITH_INTERNATIONAL=OFF         -DWITH_CYCLES=ON         -DWITH_AUDASPAC                                                                                E=OFF         -DWITH_BOOST=ON         -DWITH_BULLET=OFF         -DWITH_CODEC_AVI                                                                                =OFF         -DWITH_COMPOSITOR=OFF         -DWITH_COMPOSITOR=OFF         -DWITH_                                                                                GAMEENGINE=OFF         -DWITH_GAMEENGINE_DECKLINK=OFF         -DWITH_HEADLESS=ON                                                                                -DWITH_IMAGE_DDS=OFF         -DWITH_IMAGE_CINEON=OFF         -DWITH_IMA                                                                                GE_OPENEXR=OFF         -DWITH_IMAGE_OPENJPEG=OFF         -DWITH_IMAGE_TIFF=OFF                                                                                -DWITH_INPUT_NDOF=OFF         -DWITH_LIBMV=OFF         -DWITH_MOD_REMESH=                                                                                OFF         -DWITH_MOD_SMOKE=OFF         -DWITH_OPENAL=OFF         -DWITH_OPENIM                                                                                AGEIO=OFF         -DWITH_PYTHON_INSTALL_NUMPY=OFF         -DWITH_INSTALL_PORTABL                                                                                E=ON         -DWITH_PYTHON_INSTALL_REQUESTS=OFF         -DWITH_PYTHON_MODULE=ON                                                                                -DWITH_PYTHON_INSTALL=OFF         -DWITH_STATIC_LIBS=ON         -DWITH_S                                                                                YSTEM_GLEW=OFF         -DWITH_SYSTEM_GLES=OFF         -DWITH_FREESTYLE=ON
 ---> Running in 9ceb5205f8f8
/bin/sh: python3: command not found
-- The C compiler identification is GNU 7.3.1
-- The CXX compiler identification is GNU 7.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Performing Test SUPPORT_SSE_BUILD
-- Performing Test SUPPORT_SSE_BUILD - Success
-- SSE Support: detected.
-- Performing Test SUPPORT_SSE2_BUILD
-- Performing Test SUPPORT_SSE2_BUILD - Success
-- SSE2 Support: detected.
-- Found Git: /usr/bin/git (found version "2.14.4")
-- Looking for C++ include memory
-- Looking for C++ include memory - found
-- Performing Test HAVE_SHARED_PTR_IN_STD_NAMESPACE
-- Performing Test HAVE_SHARED_PTR_IN_STD_NAMESPACE - Success
-- Found shared_ptr in std namespace using <memory> header.
-- Looking for C++ include unordered_map
-- Looking for C++ include unordered_map - found
-- Performing Test HAVE_UNORDERED_MAP_IN_STD_NAMESPACE
-- Performing Test HAVE_UNORDERED_MAP_IN_STD_NAMESPACE - Success
-- Found unordered_map/set in std namespace.
-- Found JPEG: /usr/lib64/libjpeg.so
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.7")
-- Found PNG: /usr/lib64/libpng.so (found version "1.5.13")
-- Found Freetype: /usr/lib64/libfreetype.so (found version "2.4.11")
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:108                                                                                (message):
  Could NOT find PythonLibsUnix (missing: PYTHON_INCLUDE_DIR
  PYTHON_INCLUDE_CONFIG_DIR)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILU                                                                                RE_MESSAGE)
  build_files/cmake/Modules/FindPythonLibsUnix.cmake:184 (FIND_PACKAGE_HANDLE_ST                                                                                ANDARD_ARGS)
  build_files/cmake/platform/platform_unix.cmake:62 (find_package)
  CMakeLists.txt:854 (include)

-- Configuring incomplete, errors occurred!
See also "/root/blender-git/blender_build/CMakeFiles/CMakeOutput.log".
The command '/bin/sh -c mkdir ~/blender-git/blender_build &&     cd ~/blender-gi                                                                                t/blender_build &&     cmake ../blender         -DPYTHON_INCLUDE_DIR=$(python3 -                                                                                c "from distutils.sysconfig import get_python_inc; print(get_python_inc())")                                                                                -DPYTHON_LIBRARY=/usr/lib64/libpython3.6m.so         -DPYTHON_LIBPATH=/usr                                                                                /lib64         -DWITH_INTERNATIONAL=OFF         -DWITH_CYCLES=ON         -DWITH_                                                                                AUDASPACE=OFF         -DWITH_BOOST=ON         -DWITH_BULLET=OFF         -DWITH_C                                                                                ODEC_AVI=OFF         -DWITH_COMPOSITOR=OFF         -DWITH_COMPOSITOR=OFF                                                                                -DWITH_GAMEENGINE=OFF         -DWITH_GAMEENGINE_DECKLINK=OFF         -DWITH_HEA                                                                                DLESS=ON         -DWITH_IMAGE_DDS=OFF         -DWITH_IMAGE_CINEON=OFF         -D                                                                                WITH_IMAGE_OPENEXR=OFF         -DWITH_IMAGE_OPENJPEG=OFF         -DWITH_IMAGE_TI                                                                                FF=OFF         -DWITH_INPUT_NDOF=OFF         -DWITH_LIBMV=OFF         -DWITH_MOD                                                                                _REMESH=OFF         -DWITH_MOD_SMOKE=OFF         -DWITH_OPENAL=OFF         -DWIT                                                                                H_OPENIMAGEIO=OFF         -DWITH_PYTHON_INSTALL_NUMPY=OFF         -DWITH_INSTALL                                                                                _PORTABLE=ON         -DWITH_PYTHON_INSTALL_REQUESTS=OFF         -DWITH_PYTHON_MO                                                                                DULE=ON         -DWITH_PYTHON_INSTALL=OFF         -DWITH_STATIC_LIBS=ON                                                                                -DWITH_SYSTEM_GLEW=OFF         -DWITH_SYSTEM_GLES=OFF         -DWITH_FREESTYLE=O                                                                                N' returned a non-zero code: 1

It looks like the issue here was that amazonlinux stopped shipping a python36 package (as described in #7) -- hence the /bin/sh: python3: command not found
I fixed this in #10 (now we manually install python3.6 from source). I think this should fix this issue. 🙂

It seems that by using FROM amazonlinux you always use the latest one. However, currently Lambda is still shipping with an earlier version of Amazon Linux. Changing that line in the docker file to "FROM amazonlinux:2<IP_ADDRESS>70812" fixed the issue for me. However, once Amazon Lambda is upgraded to use the more recent amazon linux the issue will show up again and your fix will become necessary. Thank you!

Yup, I came to that same conclusion. Currently pinning to that version in the updated version of the dockerfile.
Let me know if you have any other issues. Thanks for the bug report!

@bcongdon I'm curious, what do you use this for? Do you have a particular application of blender in lambda that you built and maintain this for?

I used this in an earlier version of git-trophy. I don't really have any production projects that use this right now, just random experiments.
It took a frustratingly long time to get blender working in lambda though, so I maintain this to (hopefully) make it easier for others to do the same


Add whitelist_ip and blacklist_ip and multiple domains support

The support is simple ip list, not CIDR, but it is better than no support at all
Should fix https://github.com/cloudflare/nginx-google-oauth/issues/13

Sorry, i mess up the patches and mixed the 2 branched, but the multi-domains support is simple enough.
Should fix https://github.com/cloudflare/nginx-google-oauth/issues/6

Please see my comment in #13 and open a separate PR for multiple domain support. Thanks!

Thanks, i will close this one as i have open the new pull-request in https://github.com/cloudflare/nginx-google-oauth/pull/15


update BigQuery/Dataproc docs on permissions and other details

Contributions

[X] I have read the contribution docs, and understand what's expected of me.

Link to the page on docs.getdbt.com requiring updates
python models
What part(s) of the page would you like to see updated?
BigQuery setup
Additional information
https://getdbt.slack.com/archives/C03QUA7DWCW/p1666735910433449
check through other threads too

Related: https://github.com/dbt-labs/docs.getdbt.com/pull/2393


Add optional, updatable rationale to single choice votes.

resolves #540
i'll follow this up with an identical implementation for cwd-proposal-multiple in a separate PR.
what the vision is here: we're not really building comments, so much as we want to be clear that this is your rationale. having this is important for understanding someone's vote history when you are delegating to them. so that past votes may be annotated and rationales updated according to new information, we let rationales be updated.

Codecov Report
Base: 94.85% // Head: 94.80% // Decreases project coverage by -0.05% :warning:

Coverage data is based on head (866c48d) compared to base (0029c06).
Patch coverage: 91.89% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #542      +/-   ##
==========================================
- Coverage   94.85%   94.80%   -0.06%
==========================================
  Files          38       38
  Lines        3539     3560      +21
==========================================
+ Hits         3357     3375      +18
- Misses        182      185       +3

Impacted Files
Coverage Δ

...racts/proposal/cwd-proposal-single/src/contract.rs
98.65% <91.89%> (-0.65%)
:arrow_down:

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.

should there be an option for the admin to update/remove rationale?

this is a good question and gets to an important point about moderation of these. my thought: moderation is better done on the frontend by hiding rationales, removing it from chain state does not' remove it from the chain, and i don't think people want to do a DAO vote every time they remove a rationale.
in the future, i imagine that we'll allow DAOs to set an item which indicates what address, or set of addresses, may moderate rationales. then, we can use the wallet auth system we're working on to authenticate them, and allow them to moderate. imo, we should be trying to make stopping spam easier than creating it. by charging a TX fee to create spam, and making it effortless to remove it in the UI, i think we have a shot at winning the battle here.

@JakeHartnell: I'm not sure about is the ability to update the rational

could you expand a little on what about that makes you nervous?
fwiw: i expect that we'll always display the history of rationales next to the current one. if you update it, your previous one will be shown. i've taken care in these changes to expose that data so that it is easily indexable and showable in the frontend.

@JakeHartnell: I'm not sure about is the ability to update the rational

could you expand a little on what about that makes you nervous?
fwiw: i expect that we'll always display the history of rationales next to the current one. if you update it, your previous one will be shown. i've taken care in these changes to expose that data so that it is easily indexable and showable in the frontend.

On second thought, I think this is fine. :shipit:
Can have an option to disable it in the UI if need be.


Easier-to-find Synchronous Attempt Functionality

The current AsyncEx library uses a pattern where the end-user can pass an already-cancelled CancellationToken into any API to achieve a "synchronous attempt".
The main advantage of this approach is that it keeps the APIs quite clean.
The main disadvantages of this approach are that it's not very discoverable and that it can encourage using exceptions for control flow.
This issue is a brainstorming of alternatives.
Whatever solution we adopt will need to be consistent across these APIs:
AsyncAutoResetEvent:
  Task WaitAsync(CancellationToken cancellationToken);
AsyncConditionVariable:
  Task WaitAsync(CancellationToken cancellationToken);
AsyncLock:
  AwaitableDisposable<IDisposable> LockAsync(CancellationToken cancellationToken);
AsyncManualResetEvent:
  Task WaitAsync(CancellationToken cancellationToken);
AsyncMonitor:
  AwaitableDisposable<IDisposable> EnterAsync(CancellationToken cancellationToken);
  Task WaitAsync(CancellationToken cancellationToken);
AsyncSemaphore:
  Task WaitAsync(CancellationToken cancellationToken);
PauseToken:
  Task WaitWhilePausedAsync(CancellationToken token);

as well as these prospective APIs (not currently in this project but will almost certainly be added):
AsyncReaderWriterLock:
  AwaitableDisposable<IDisposable> ReaderLockAsync(CancellationToken cancellationToken);
  AwaitableDisposable<IDisposable> WriterLockAsync(CancellationToken cancellationToken);
AsyncProducerConsumerQueue<T>:
  Task<T> DequeueAsync(CancellationToken cancellationToken);
  Task<DequeueResult> TryDequeueAsync(CancellationToken cancellationToken);
  Task EnqueueAsync(T item, CancellationToken cancellationToken);
  Task<bool> TryEnqueueAsync(T item, CancellationToken cancellationToken);
  Task<bool> OutputAvailableAsync(CancellationToken cancellationToken);

(AwaitableDisposable<IDisposable> is practically the same as Task<IDisposable> for the purpose of this conversation).
Note that the existing Try* members on AsyncProducerConsumerQueue<T> are not like TryLock (synchronous attempt); rather, they are like TryParse (do not throw on error). These are going to be renamed.
Suggestions should have method declarations and usage examples for each of these:
void Wait();
IDisposable Lock();
DequeueResult Dequeue();
bool OutputAvailable();

@roend83 @IanYates @engdata

The traditional Try approach uses out params:
bool TryWait();
bool TryLock(out IDisposable);
bool TryDeque(out DequeResult);
bool TryOutputAvailable(out bool);

One thing I particularly dislike about this approach is that TryLock has no way to call it safely:
IDisposable key;
if (mutex.TryLock(out key))
{
  // Exception may be thrown here, causing a lock that will never be freed.
  using (key)
  {
    ...
  }
}

Another dislike is because TryOutputAvailable has two boolean return values,

Because of these problems (with the TryLock example), Monitor.TryEnter was updated to be safer (with the ref bool lockTaken parameter), but the usage is quite poor and it isn't clear how to do the same with IDisposable.
However, we can have the returned IDisposable be null, which gives us the first real contender:
bool TryWait();
IDisposable TryLock(); // Return null on failure to lock
DequeResult? TryDeque();
bool? TryOuputAvailable();

Usage:
if (signal.TryWait())
  ;

using (var key = mutex.TryLock())
{
  if (key == null)
    ;
}

var result = queue.TryDeque();
if (result != null)
  ;

var more = queue.TryOutputAvailable();
if (more == null)
  ; // No more right now, might be more later.
else if (!more.Value)
  ; // No more ever.

I'm not too wild about the nullable boolean, and I'm not particularly pleased with the bool return type for TryWait when all the other method styles use nullable return types.

Interesting ideas.  I'm at a customer's site at the moment so don't have a lot of time for thoughts :)   (checking email in between a bit of downtime).
Could we have a returned class or struct that contains a status indicator as well as being disposable?  That way you could safely call it with a using statement - since you could always dispose - and check within that using to see if you actually got the lock and can proceed.  If you didn't get the lock then the disposal is effectively a no-op.
I'll think about it some more this evening.  I do like the idea of avoiding exception-based flow control and making it clear about whether we're trying to enter with no waiting versus being happy to wait for a definite (via timespan or cancellation token) or indefinite period.

The only knock I have against a null IDisposable being used as the success/failure marker is that using((IDisposable)null){..} is perfectly valid, and enters the inner scope. This makes it harder to intuit correct usage over an explicit bool.
I actually don't mind the syntax for AsyncMonitor.TryEnter / AsyncLock.TryLock with an out bool:
bool acquiredLock;

using(Monitor.TryEnter(out acquiredLock)
if(acquiredLock)
{
    ...
}

Returning a null IDisposable if not acquired.
While I don't typically like the style, omitting the outer braces gives a 'single-looking' block (too bad we didn't get in-line out params in C# 6).
@IanYates suggestion for a disposable class with a success marker is also completely fair, but possibly slightly less idiomatic.
For the TryOutputAvailable method, I would be inclined to separate out the completion checking into a separate member such as IsComplete, and simply return a boolean for the TryOutputAvailable.

Good ideas so far!
@engdata I don't think a boolean getter would work, unless I'm missing something; that operation must distinguish somehow between "none available right now" and "none available forevermore".

My thought was just having something like:
if (queue.IsCompleted)
   ; // No more ever.
else if (queue.TryOutputAvailable())
   ; // No more right now, might be more later.

to split up the two concerns - but maybe I am missing something in the fundamentals. The boolean getter could potentially just be replaced with / a light wrapper around the completion task's IsCompleted member (thinking of the dataflow blocks as an example, though they do not have Try / synchronous members).

Instead of returning an IDisposable, how about returning a type that implements IDisposable and which also defines an implicit conversion to the type that we want it to have, such as bool. The using clause will treat it as an IDisposable, so that the cleanup is done, but then in the body of the using clause you can use it as the desired type.
struct LockReturn : IDisposable {
...
public static implicit operator bool( LockReturn Lr) {...}
...
}
using (var locked = x.TryLock()) {
if (locked) {...}
}

sjb

I'll need to make a decision on this soon. Paging @niemyjski, if you'd like to chime in.

I like @sjb-sjb 's idea, probably because it's similar to mine but more elegant whilst still being pretty discoverable (although maybe because I've just read this thread I'm not necessarily a good judge of discoverability).
However it does't really meet all of the criteria...  It's 12:15am here so I'll literally sleep on it and see if I can make a meaningful suggestion tomorrow.
I'm keen to give the new library a go but will need to do something about reader/writer locks as I use them extensively.

I'm all for passing in a cancellation token. I wish it was there today but there are some questions that need to be addressed.

I think they all need to be optional: CancellationToken token = default(CancellationToken)
What do you do if you pass in a cancelled token? In some places in our queues we pass in a cancelled token to say we want to see if we can dequeue some work and if we can't bail immediately (so we are still doing some work).
I think it would be nice to have some extension methods that accept a TimeSpan and convert that to a cancellation token.. That's what we are doing today.

What ever direction we go, I feel like it needs to be consistent across the board.

In the case of TryLock, would that not throw an error but return null if the cancellation token becomes cancelled? What if the cancellation token is cancelled does it immediately return null?

I'm also leaning towards @sjb-sjb's proposal, though we do have to flesh it out and make sure it still makes sense when applied consistently.
Consistency is my highest priority in this. The functionality is all there today, it's just not very discoverable. Worst case scenario is it will just stay that way. I'd rather have a somewhat odd but consistent solution rather than inconsistencies.

@IanYates I have had RWL requests through private channels. It is definitely being put in, probably at lunch (in 2 hours for me). However, it will not have the notion of "upgradeable reader locks", only "reader locks" and "writer locks". Is that sufficient for your needs?

@niemyjski:

I think they all need to be optional: CancellationToken token = default(CancellationToken)

All the CTs are optional. Actually implemented by overloads and not default parameters, due to versioning/upgrade concerns.

What do you do if you pass in a cancelled token? In some places in our queues we pass in a cancelled token to say we want to see if we can dequeue some work and if we can't bail immediately (so we are still doing some work).

That is the current semantics. If we can get a "TryDequeue" that is consistent with other "Try" behaviors, then I might revisit the current semantics so that CTs are always honored. It will be consistent one way or the other, though; either CTs will always be ignored on success (current behavior), or CTs will always be honored first. I have a question out to @stephentoub about his thoughts on this.

I think it would be nice to have some extension methods that accept a TimeSpan and convert that to a cancellation token.. That's what we are doing today.

I'll consider that.
Most "timeout" APIs in the BCL only exist because they're more efficient than wrapping a TimeSpan in a CancellationTokenSource, and then doing the operation with a generic CancellationToken (which often requires registering a manual cancel callback). Most Win32 APIs for timeouts can just take a timeout value directly instead of that roundabout way, avoiding plenty of allocations.
In the case of async coordination primitives, everything's in our code to begin with, so there isn't any implementation benefit of taking a timespan. The implementations would literally just be wrapping the timespan in a CT and passing it along. It could be seen as an end-user benefit, though.

We did new CancellationTokenSource(timeout).Token overloads because we wanted to keep everything clean and consistent. Yes, there are more allocations but it saves from having a ton of overloads :).

@IanYates ARWL is in version 1.0.0-delta-4.

Fleshed out the "Try types with implicit bool conversion" approach. It's on the TryTypes branch; example usage is here.

@StephenCleary - wow - thanks.  I had no expectation for you to do it (particularly over your lunch hour).  I don't use the upgrade locks so am super happy with just readers and writers.
I injured my leg yesterday (long and not interesting story) so that's going to keep me away from work for a couple of days whilst I get xrays, etc sorted but I'll see if I can sneak in the new AsyncEx at some stage towards the end of the week and exercise the code.  I build against .NET 4.6.1, and will jump to 4.6.2 as soon as it's out to avoid that issue where continuations don't run where they're supposed to.

@IanYates I always do open-source work on my own time. It nicely avoids any questions over who owns the code. :)
I did decide to target AsyncEx.Tasks to netstandard1.3 (net46), because that's the API surface that it needs. It's unfortunate that there's a bug in net46/net461, but I chose not to move the target to netstandard1.5 just because of a desktop framework bug. The bug is rare - IIRC, it would only trigger if you use a synchronization primitive task (i.e., the result of AsyncLock.LockAsync()) in a Task.WhenAll/Task.WhenAny, and even if you do, it would work fine in most cases (it does, however, have a potential for deadlock in obscure situations).

I've decided for now not to proceed with easier-to-find Synchronous Attempt functionality. However, this exercise did illustrate the difficulty with other Try* methods such as TryDequeueAsync. As a result of the experiments on the TryTypes branch, all Try* APIs have been removed. This will make it easier to add Synchronous Attempt APIs if we reconsider this in the future.


Minor fix

Hi, the library is great, thanks!
I ran into some trivial problems when including this library, in my CMakeLists.txt I have the following statements:
include(FetchContent)
FetchContent_Declare(
  channel
  URL https://github.com/andreiavrammsd/cpp-channel/archive/refs/tags/v0.7.2.zip
)
FetchContent_MakeAvailable(channel)
include_directories(${channel_SOURCE_DIR}/include)

I noticed using FetchContent_MakeAvailable instead of FetchContent_Populate as in the example CMakeLists will give way to building tests and examples, which blocked the cmake for downloading and building googletest and generated a lot of binaries irrelevant to my project
So I wonder if it's appropriate to add some conditionals to CMakeLists.txt to control the building process, this PR will turn off the examples and tests building in default mode.  After that, if the library users happen to use FetchContent_MakeAvailable incidentally, they won't have to build the tests and examples by default.  The test is slow to initialize in regions with poor networks.
To enable them, we can run the following command:
cmake -Dcpp_channel_build_examples=ON -Dcpp_channel_build_tests=ON -Bbuild -H.

Also, when building my project with this library for the first time, I noticed the example code has an include problem, I am not using any IDE, so perhaps this is caused by IDEs?
Best regards!

Thank you for using the library!


Select2 not rendering for the second time

Hi!
I am wondering if any of you had any issues with rendering Select2 element. I am building Angular app, where I use ui-router, and have two states: home, and home.news. I use Select2 element in my home.news view, which renders correctly for the first time. However, when I am coming back to the home page, and go to the home.news again, it does not render at all. I render it in my controller as with:
            $(document).ready(function() {  // not working without document ready
                $(".role-select").select2({
                    placeholder: "Select news",
                    width: '100%'
                });
            });

Besides that, if I try to remove $(document).ready(), the element doesnt render at all.
Any ideas?

This appears to be more of a usage question than a bug report or common feature request.  As we continue to keep the Select2 issue tracker geared towards these two areas, bug reports and common feature requests, we are redirecting usage questions to other communities such as the mailing list, IRC, or Stack Overflow.


Accessibility: Confetti animates and shouldn't when prefers-reduced-motion set

Describe the bug
Confetti animates after becoming a member of a project regardless of the prefers-reduced-motion media query, causing site accessibility issues
To Reproduce
Steps to reproduce the behavior:

Configure your OS or browser to prefer reduced motion (for Firefox on Linux, I do this by setting ui.prefersReducedMotion to 1 in about:config, but this is an OS-wide accessibility setting on macOS and Windows)
Click through the prompts to give money to a project
:tada: confetti moves around :tada:
Become motion sick, if you're like me and other folks

Expected behavior
Confetti probably shouldn't animate in multiple directions or at all when prefers-reduced-motion is set. A static image is likely the best option; fades are probably okay. See https://webkit.org/blog/7551/responsive-design-for-motion/ for some tips in designing for motion accessibility.
Desktop (please complete the following information):

OS: Linux
Browser: Firefox
Version: 74

Additional context
What kind of motion is a problem for people is 100% subjective based on a person's needs. I'll offer to test any fixes made for this, but what is fine for me is a vestibular trigger for someone else. I'll recommend a static confetti image when the prefers-reduced-motion media query suggests that a user needs reduced motion.

Hi @iliana, thank you very much for opening this very well-documented issue. I've created a second one based on your description on the canvas-confetti library repo (the one we're using) to get a chance at fixing this for everyone else using it.
We'll keep this one open until the problem is solved on our end.

New version has been merged with https://github.com/opencollective/opencollective-frontend/pull/3889, I'll iterate on this issue now together with #3019

The fix will be deployed soon. Thanks @iliana!


Need to link the shiny app proof process to proof-api releases

Tether processes to spin up proof servers to specific, tested releases of the proof-api to ensure continuity of functionality and allow for testing prior to go-live.

We will anticipate that proof API releases will have a 7 day delay until servers catch up with the new release - we will not build anything here for now.
This will be added to the docs


Routes do not register properly.

Seems to be an issue on my website, appears to be working in the rest of my projects.
Can anyone confirm?


Updating backup vault blob policy is not supported as suggested by documentation

The documention suggests the PUT operation can be used to "create or update" a backup vault policy, but attempting to update an existing policy returns an error:
{
  "error": {
    "additionalInfo": [
      {
        "type": "UserFacingError",
        "info": {
          "message": "Update of existing policy is not supported.",
          "recommendedAction": [
            "Please create a new policy."
          ],
          "details": null,
          "code": "UserErrorBMSUpdatePolicyNotSupported",
          "target": "",
          "innerError": null,
          "isRetryable": false,
          "isUserError": false,
          "properties": {
            "ActivityId": "740da5ca-2201-401e-a9db-d10c848f2f78"
          }
        }
      }
    ],
    "code": "UserErrorBMSUpdatePolicyNotSupported",
    "message": "Update of existing policy is not supported.",
    "target": null
  }
}

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

ID: cff24a7b-80f5-be21-57ff-d1cd93c27088
Version Independent ID: 1eaf0425-4c6b-2c8e-a8ce-cab248199d39
Content: Create backup policies for blobs using data protection REST API - Azure Backup
Content Source: articles/backup/backup-azure-dataprotection-use-rest-api-create-update-blob-policy.md
Service: backup
GitHub Login: @v-amallick
Microsoft Alias: v-amallick

Hi @prosprice, Thank you for your feedback.
@pvrk: Requset you to please look into this issue. Thanks.

#assing:pvrk

@prosprice : Thanks for pointing this out. Updated the document and removed the part about updating. We do have plans to add it and I will update the document again when the update functionality is enabled.

The document is updated. @v-amallick: Do you think we can close the issue?

Thank you, @pvrk.
Hi @prosprice, closing the issue as the document is updated.
Thanks.

#please-close


Work on partial-application and pipeline syntax

The current |> syntax works great if you assume an entirely curried-function-primary-argument-last ecosystem, but JavaScript is not that by any means.
There should be some convenient way to express pipelines which incorporate function and method calls, and partial application of either.
It's a bit of a risk for the language because it's a feature with no clear analogue in JS, but I think the pipe syntax coupled with pattern matching could be the two big pillars of expressiveness, with the immutability and strict arity of functions being sprinkles.

I think I need to come up with some realistic use cases and then try applying various transformations on them to judge what looks the most sensible...
Currently thinking some kind of placeholder syntax for the "piped value" like _ or $, and probably arrows to represent the data flow, like |> or => or -> or >> or :> or something.

Here's two example: One using method chains, the other using the pipeline macro >> with placeholder $. Characters subject to change.
Note that the method chain version does not allow inserting a custom function into the middle of the pipeline, and obviously doesn't play nice with existing function signatures which are too lax for Squiggle.
Method chain
site
    .pages
    .filter(fn(page, _i, _a) page.basename = "index")
    .map(fn(page, _i, _a) [page, page.dir.match(SEC_REGEXP)])
    .filter(fn(pair, _i, _a) pair[1])
    .map(fn(pair, _i, _a) let (
        page = pair[0],
        match = pair[1],
        chapter = [
            Number(match[1]),
            Number(match[2])
        ],
        tocData = {
            "title": page.data.title,
            "section": chapter[0],
            "subsection": chapter[1],
            "chapter": chapter
        }
    ) [page, tocData])
    .sort(...)

Function pipeline
site.pages
    >> filter($, fn(page) page.basename = "index")
    >> map($, fn(page) [page, page.dir.match(SEC_REGEXP)])
    >> filter($, fn(pair) pair[1])
    >> map($, fn(pair) let (
        page = pair[0],
        match = pair[1],
        chapter = [
            Number(match[1]),
            Number(match[2])
        ],
        tocData = {
            "title": page.data.title,
            "section": chapter[0],
            "subsection": chapter[1],
            "chapter": chapter
        }
    ) [page, tocData])
    >> sortBy($, ...)

I'm closing this until I have more realistic examples, especially since I'm not including extra functions in the language any more.


Is it possible to use many to many between 3 models?

Is it possible to use many to many between 3 models?
I have 3 models I want to join into a bridge table. The bridge table is "client_operator_role".

Operator

type Operator struct {
	gorm.Model
	Title             string            `gorm:"unique;not null" validate:"required,min=1,max=100"`
	Email             string            `gorm:"not null;unique" validate:"required,email"`
	Mobile            string            `gorm:"not null" validate:"required,min=7,max=15,numeric"`
	Last_online       time.Time         `gorm:"default:null" validate:"omitempty"`
	Last_ip           string            `gorm:"default:null" validate:"omitempty,ip"`
	Clients           []*Client         `gorm:"many2many:client_operators;"`
	Cli_ids           []string          `gorm:"-:all" validate:"omitempty,dive,numeric"` // placeholder field, wont be part of table
	GoadminCustomUser GoadminCustomUser `validate:"omitempty,dive"`
}

Client

type Client struct {
	gorm.Model
	Name        string      `gorm:"unique;not null" validate:"required,min=1,max=30"`
	Kyc_status  string      `gorm:"not null" validate:"required,min=1,max=30"`
	Kyc_remarks string      `gorm:"default:null" validate:"omitempty,min=0,max=200"`
	Operators   []*Operator `gorm:"many2many:client_operators;"`
	Op_ids      []string    `gorm:"-:all" validate:"omitempty,dive,numeric"` // placeholder field, wont be part of table
	Users       []User
}

Role

type GoadminRole struct {
	ID        uint `gorm:"primaryKey"`
	Name      string
	Slug      string
	CreatedAt time.Time
	UpdatedAt time.Time
	Operators []*Operator `gorm:"many2many:client_operator;"`
}

Gorm docs state many2many is only for 2 models. Is there a workaround to join these three?

looking for this as well


#108Favicon-test Images update

Description
#108
Fixed the bug
Favicon background not getting removed. #108
Fixes # (issue)
#108
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.

[ ] Test A
[ ] Test B

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] Any dependent changes have been merged and published in downstream modules

I have to make some changes, but you didn't create this PR in another branch so finding it difficult as I only got permission in other branch of your fork, please give me collab access to your forked repo and will make the changes and merge. @Abhinavkar

"You can’t commit to main because it is a protected branch."

Created #120 from your fork


[feature] [discussion] Easier third-party integration

Motivation
Styled-jsx is an amazing tool to create new styled components from plain HTML elements, however, in my experience, integrating it with already existing components can be cumbersome.
Newcomers can easily be deceived into attempting something like this:
const MyComponent = () => (

    Click this red button <Button/>

)

To someone familiar with how this library works, this triggers all the alarms. The Button won't be affected by the style for a variety of reasons: <Button/> isn't a known HTML tag and it doesn't really have to correspond to any HTML at all. Furthermore, the Button component doesn't even receive the local scope's className, because it does not pass the test in babel.js, saying only JSX tags starting in lowercase get it. Indeed, why should className be passed to the Button component, when styled-jsx has no idea whether Button even accepts a className prop.
To clarify: my Button is a styled-component. It does accept a className prop and returns a single HTML element with all CSS classes, including the one passed from props, concatenated and applied:
const Button = styled.button`apppearance:none; border: 1px solid black; padding: 6px;`
<Button className="hello"/> // -> renders in HTML to <button class="hello sc-adf415"></button>

Some other libraries and components (React Transition Group and React Router spring to mind) may treat className more liberally, either by allowing the programmer to supply multiple classNames for different functions, or by calling the prop differently.
Current solution: global classes and nested selectors
One possible course of action is to introduce a global className that will be applied to Button, but only inside MyComponent. Maybe like this:
const MyComponent = () => (

    Click this red button <Button className="red-button"/>

)

This has a major drawback: the introduction of a global className leads to possible naming collisions, which are to be avoided in component architectures. A partial remedy is to use child selectors (>) instead of descendant selectors ([space]), but that breaks component encapsulation.
Current solution: resolve tag
The resolve tag is a great option to create a stand-alone css class that can be applied in any way the developer wants. If I were to fix the above example with resolve, it'd look like this:
const { className, styles } = css.resolve`button { background: red }`;
const MyComponent = () => (

    Click this red button <Button className={className}/>

)

My objection to this is that for each third-party component you want to style, you'll have to create new variable and you'll have to keep them each in a different variable. Instead

)

Propositions
In my opinion, this library should strive to copy the naïve way of writing third party styles. I'd like the best to write code that resembles this the most:
const MyComponent = () => (

    Click this red button <Button/>

)

Proposition 1: Expose state.className
If the babel transform is changed so that JSX_CLASSNAME is an alias of state.className, it becomes possible to write code like this:
const MyComponent = () => (

    Click this red button <Button className={`${JSX_CLASSNAME} button`}/>

)

This approach requires nothing more than
either adding JSX_CLASSNAME's variable declaration before the styled block (implemented here)
or replacing all JSX_CLASSNAME identifiers with state.className (implemented here)
Variants on this include
1. changing JSX_CLASSNAME to any other variable name
2. using an 'imported' function:
import {jsx} from 'styled-jsx';
const MyComponent = () => (

    Click this red button <Button className={jsx('button')}/>

)

That's it from me for now. Other propositions and discussion of viability welcome below

@giuseppeg is this documented anywhere? I've seen hints at this functionality in code, but I don't remember seeing it in a README.

this workaround is undocumented because in these cases it is better to be explicit. It is in the library only to make dynamic tags work. See the Heading example here https://github.com/zeit/styled-jsx/releases/tag/v3.0.0 I think that the current set of features allows to style components from 3rd parties therefore I am goig to close this issue

Can this be possible?
// page.js
//  a contracted field liked styledCls
<Button styledCls="my-btn">click me!</Button>

// Button.js
// the 'styledCls' inject into 'className' props;

const { text, className } = props; // className = 'my-btn'
const prefixCls = 'component-btn';
<button className={classNames(prefixCls, className)}>{text}</button>

// render
// <button class="jsx-12345678 component-btn my-btn">click me!</button>
//

@czy0729 That could conceivably overwrite a styledCls prop in a third-party component from a library.
What I eventually did was that I forked styled-jsx into my own npm package comfy-styled-jsx. Now I can do this
import {jsx} from 'comfy-styled-jsx';

const MyConfirmBox = () => (

Press to confirm

        <Button className={jsx`large-button`}>confirm</Button>

)
/**
 * Renders:
 *

 *
Press to confirm

 *      <Button className="jsx-12345678 large-button">confirm</Button>
 *

 */

You can easily change the import's name to avoid possible collisions. I've found that this is the best solution I could come up with.


Trying to install on Ionic project

Expected Behaviour
Work
Actual Behaviour
Doesn't work
Reproduce Scenario (including but not limited to)
 // app.component.ts

  initializeApp() {
    this.platform.ready().then(() => {
      // Okay, so the platform is ready and our plugins are available.
      // Here you can do any higher level native things you might need.
      this.statusBar.styleDefault();
      this.splashScreen.hide();

      const options: PushOptions = {
        android: { senderID: '256624249194' },
        ios: {
            alert: 'true',
            badge: true,
            sound: 'false'
        },
        browser: {
          pushServiceURL: 'http://push.api.phonegap.com/v1/push'
        }
      };

      const pushObject: PushObject = this.push.init(options);

      pushObject.on('notification').subscribe((notification: any) => {
        console.log(notification)
        let youralert = this.alertCtrl.create({
          title: 'New Push notification',
          message: notification.message
        });
        youralert.present();
      });
    });
  }

// config.xml

<plugin name="phonegap-plugin-push" spec="~2.1.2">
   <variable name="SENDER_ID" value="256624249194" />
</plugin>

<platform name="android">
<resource-file src="google-services.json" target="google-services.json" />
</platform>

"cordova": {
            "plugins": {
                "phonegap-plugin-push": {
                    "SENDER_ID": "256624249194"
                },

And the google-service.json are in app/google-services.json
Platform and Version (eg. Android 5.0 or iOS 9.2.1)
Android 7
(Android) What device vendor (e.g. Samsung, HTC, Sony...)
 I don't no :/

Closing, inactivity. Please comment/re-open if you have more details.


Feature: rendering criterea for specific appnames.

I think the title is pretty straightfoward, would make this 100x more customisable, being able to put some notifications in the center, others in the left top with different font sizes, etc.
(
    name: "root",
    parent: "",
    hook: Hook(parent_anchor: TM, self_anchor: MM),
    offset: Vec2(x: 0.0, y: .0),
    render_criteria: AppName(["telegram-deskto", "firefox"]),
    // https://github.com/Toqozz/wired-notify/wiki/NotificationBlock
    params: NotificationBlock((...)),
),

(
    name: "root",
    parent: "",
    hook: Hook(parent_anchor: TR, self_anchor: RT),
    offset: Vec2(x: -25.0, y: 40.0),
    render_anti_criteria: AppName(["telegram-deskto", "firefox"]),
    // https://github.com/Toqozz/wired-notify/wiki/NotificationBlock
    params: NotificationBlock((...)),
),

I'll try to see how it works and see if I can actually make somewhat a prototype.

This should be a pretty simple add yep.    Let me know if you have any questions 😃.

I'm trying, catching up with reality and learning some Rust finally

A good place to start looking might be https://github.com/Toqozz/wired-notify/blob/8298b7281ea4f5e3a22853ce299e4d621caabaec/src/rendering/layout.rs#L77-L111
I forgot but there actually is an AppName criteria already but it only checks if a name exists, which isn't very useful.  We probably want to replace that with a string compare or something.

I'd dig this.

All right, I think I did it, but the notifications that are not rendered simply keep alive indefinitely. I'll try to fix it before opening up a PR.

My 5 cents. Inverting the dependency tree, so that apps can choose which layout to use, would be a more scalable solution IMHO. Specially since apps can change name between versions and it'd be out of our control.
Having to make changes to a layout configuration every time a new app comes along sounds like the wrong way to go about it.

True, but what do you mean by inverting the dependency tree?

So I've added some support for logical operators in render_criteria and render_anti_criteria now.  Would you mind trying this out @BeyondMagic and letting me know if there are any issues/things missing?
I ended up going with what you said and just did it the simple way:
...
    name: "root",
    parent: "",
    hook: Hook(parent_anchor: TL, self_anchor: TL),
    offset: Vec2(x: 7.0, y: 7.0),
    render_criteria: [And([AppName("Wired"), Body]), Or([AppName("Firefox"), AppName("Chromium")])],
    //render_anti_criteria: [Or([AppName("Wired"), AppName("Hello"), AppName("jo")])],
...

The above will match and show a notification that has either:

Both the app name "Wired" and some body text.
The app name "Firefox" or "Chromium" (case sensitive).

I'll give a look next sunday, thanks for the hard work implementating it.

Working perfectly, thank you.


Added Cross-region internal application load balancer module

Checklist

I applicable, I acknowledge that I have:

[X] Read the contributing guide
[X] Ran terraform fmt on all modified files
[X] Regenerated the relevant README.md files using tools/tfdoc.py
[X] Made sure all relevant tests pass

added links to READMEs.


fix(pwa|cache): should only cache image requests... not all requests

Description
Forgot to include a check for the type of request, so that only image requests are cached.
Motivation and context
Why is this change required? What problem does it solve?
If it fixes an open issue, please link to the issue here (if you write fixes #num
or closes #num, the issue will be automatically closed when the pull is accepted.)
How has this been tested?
Please describe in detail how you tested your changes.
Include details of your testing environment, and the tests you ran to
see how your change affects other areas of the code, etc.
Screenshots (if appropriate)
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:
Go over all the following points, and put an x in all the boxes that apply.
Please, please, please, don't send your pull request until all of the boxes are ticked. Once your pull request is created, it will trigger a build on our continuous integration server to make sure your tests and code style pass.

[ ] I have read the CONTRIBUTING document.
[ ] My pull request addresses exactly one patch/feature.
[ ] I have created a branch for this patch/feature.
[ ] Each individual commit in the pull request is meaningful.
[ ] If my change requires a change to the documentation, I have updated it accordingly.

If you're unsure about any of these, don't hesitate to ask. We're here to help!

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


[Devirtualizer] Make the getWitnessMethodSubstitutions function of Devirtualizer.cpp available to other passes.

This will enable the compile-time interpreter to use this functionality.

@swift-ci Please smoke test

Thanks for input. I will add this note in the Const Evaluator code. We don't need classes for now.

@swift-ci please test and merge


Run users options last

Fixes #15085
Before, we were running users options first then running our options setup. This would override null values because we treat those as uninitialized. However, in cases like MaximumReceiveMessageSize, null can also mean no-limit.
Now, we run users options second. And for MaximumReceiveMessageSize we track if the user sets the value so we don't accidentally use the global value if they set it to null in the hub type specific options.
@Pilchie for 3.1 bug fix approval.

@anurse Should we put the Servicing-Consider label on this or something?

Approved in the issue, as per: https://github.com/aspnet/AspNetCore/issues/15085#issuecomment-545041664


Fixing some typos

Summary
Fixed typos in examples and lavaplayer

Thank you, I didn't notice this misspelling before


Clarify the appropriate version of Python required

Please clarify the right version of Python to use when contributing to this project:

In README.rst file
In .python-version file

Thanks for your input. have updated the readme file
the python version required is defined here:
https://github.com/Netflix/lemur/blob/master/.travis.yml#L12-L13
and here in the  docs:
https://lemur.readthedocs.io/en/latest/quickstart/index.html?highlight=python#dependencies


[Question] Meteor 1.3

Is there any issue to use with Meteor 1.3?

I haven't given a try. Did u face any problem ?

I will give it a try this afternoon, pls leave it open.

A first quick loop. I have just created a collection but as I use a local CouchDB 1.5 I can't go further. I have to find a way to use the 2.0.

anyone able to use this on meteor 1.3 and above?  How do you import it?


Figure out why Mono has issues compiling, I give up.

https://travis-ci.org/PFCKrutonium/OpenRCT2Launcher
Have fun.

Using different Compiler.


update DG and UG

DG

Update Logic Component class diagram and description
Update delete command sequence diagram (under Logic Component as an example)
Add implementation details for add command
Add new Add command sequence diagram

UG

Update add command description to be clearer
Update add command to include prefixes (/c, /cr, /t) in the code format example

Codecov Report

Merging #45 into master will increase coverage by 0.62%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master      #45      +/-   ##
============================================
+ Coverage     71.10%   71.72%   +0.62%
  Complexity      373      373
============================================
  Files            68       68
  Lines          1156     1146      -10
  Branches        110      110
============================================
  Hits            822      822
+ Misses          304      294      -10
  Partials         30       30

Impacted Files
Coverage Δ
Complexity Δ

src/main/java/seedu/address/ui/MainWindow.java
0.00% <0.00%> (ø)
0.00% <0.00%> (ø%)

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 720cfc7...bcfeff8. Read the comment docs.

LGTM bro! good job 😄


Update Helm release external-dns-management to v0.16.1 (main)

This PR contains the following updates:

Package
Update
Change

external-dns-management
patch
0.16.0 -> 0.16.1

Release Notes

gardener-community/gardener-charts
v0.16.1
Compare Source
[gardener/external-dns-management]
⚠ Breaking Changes

[OPERATOR] Change OCI Image Registry from GCR (eu.gcr.io/gardener-project) to Artifact-Registry (europe-docker.pkg.dev/gardener-project/releases). Users should update their references.
by @ccwienk [#342]
[OPERATOR] rfc2136 provider expects TSIGSecret in base64 encoded format (previously base64 decoded was expected) by @Avarei [#347]

✨ New Features

[USER] [AWS Route53] Create an additional alias AAAA record for load balancers (NLBs) if load balancer target domain name has an IPv6 address. by @MartinWeindel [#341]

🏃 Others

[OPERATOR] Bumps golang from 1.21.4 to 1.21.5. by @dependabot[bot] [#338]
[DEVELOPER] Remove vendoring by @MartinWeindel [#345]

Docker Images

dns-controller-manager: europe-docker.pkg.dev/gardener-project/releases/dns-controller-manager:v0.16.1

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

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

This PR has been generated by Renovate Bot.

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.


feat: rewrite entire code base to vite open-sauced

What type of PR is this? (check all applicable)

[x] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[x] 🧑💻 Code Refactor
[x] 🔥 Performance Improvements
[ ] ✅ Test
[x] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Description

This PR removes astro and rewrites to simplified open-sauced/open-sauced vite template.
For this to properly record a major version increase we need to ensure the BREAKING CHANGE: removed astro text appears in the squashed commit - or you can let @0-vortex do the actual merge upon proper review.
Current Issues:

font-awesome icons styling on header
eslint vite cache gets stuck sometimes
used  in some vague places
incomplete postcss configuration/packages
no onegraph stuff, at all

TODO:

vite pwa configuration
enforce type checking
split components better

Related Tickets & Documents

BREAKING CHANGE: removed astro
closes #80
Mobile & Desktop Screenshots/Recordings

Added tests?

[x] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[x] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[x] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?

improve on the baseline
implement alpha?/beta?/next branch
improve on the vite template

[optional] What gif best describes this PR or how it makes you feel?

note: Deploy preview is broken because of the VITE_ prefix change.

note: Deploy preview is broken because of the VITE_ prefix change. @0-vortex you mentioned this in the Discord, but wanted to leave a note for context sharing.
Also what is handling the local redirect when logging in?
I also created a new GitHub OAuth secret and will delete the old one when this is merged.

We need both apps, one is set up for the production database and one for us to commit to local supabase toml configuration. Both of them should exist, only one of them known and the other kept secret - if attackers try to exploit the OAuth key they should be able to simply disrupt local development. For local redirect there is already a Vite base URL variable we could be using, but at the moment I don't think it's handled :D

The majority looks good.
I like the switch to TypeScript in this and appreciate you taking that on. Curious if we should be looking into Vitest in a future PR and thoughts on the post-deploy plan for the breaking change.

Tested Vitest for the Webpack rewrite in open-sauced, am a big fan of @antfu's stuff but this one is far from production-ready. Breaking change is just different env variables and would like to commit with working local development - just add the new variables on the pipeline and maybe cover/commit #139 first. Want to force a major version tag because rewrite, not actually breaking changes per say :D

Unfortunately, deploy previews have to be manually added until  https://github.com/supabase/supabase/issues/4808 is merged.


Stack Club Session, Friday September 14, 0900 PDT

@LSSTScienceCollaborations/stack-club
This week, Justin @jtmyles is going to show us what he's been doing in his HSC re-run project, implementing the whole pipeline described in the @jonathansick 's excellent 6-part "data processing tutorial" at https://pipelines.lsst.io/ and using it to process the ci_hsc test dataset. We'll look at the bash script version of this tutorial, and the notebook that describes it - should be a good source of inspiration for club members looking to create spin-off tutorial notebooks.
See you Friday, on http://stanford.zoom.us/j/946390572 !

Morning all! Stack Club starts in 10 mins - we'll be looking at Justin's HSC Re-run project. Should be good! http://stanford.zoom.us/j/946390572


[BUG] LevelDB data loss after a crash when deployed on GlusterFS

Description
We run a simple workload on LevelDB that inserts two key-value pairs. The two inserts end up going to different log files, and the first insert is set as asynchronous.
The file system trace we observed is shown below:
1 append("3.log") # first insert
2 create("4.log")
3 close("3.log")
4 append("4.log") # second insert
5 fdatasync("4.log")

When deployed on GlusterFS, the first append (line 1) may return successfully, but the data fails to persist to disk. This is due to a common approach in distributed file system for write optimization, which delays write submission to server, and lie to application that write has finished without error.
When any failure happens during the write submission, GlusterFS will make close (line 3) return with -1 to propagate the error. However, since LevelDB doesn't check any error returned by close, it's not aware about any error happens during the first insert.
In GlusterFS, fdatasync("4.log") will only persist data on 4.log but not 3.log, therefore, if any crash happens after fsync (line 5), LevelDB will not recover the first insert after reboot.
As a consequence, there is data loss on the first insert, but not second insert, which violates the ordering guarantee provided by LevelDB.
Fix
To fix the problem, we could add error handling logic for close operation. Basically, when error happens, we should consider previous append as failed, and either redo it or call fsync on that specific log file to force the file system persist the write.

Thanks for the nice report. I was able to reproduce the problem in a test and have a tentative fix ready. Though for the simplicity's sake, the fix doesn't do exactly what you suggested.

@ghemawat is going to maintance this project?


Set version to 1.2.0

This sets the version tags in the code to 1.2.0, as preparation for the upcoming v1.2.0 release.

Thanks @JakobMiksch  :+1:


Issue with freshness test display on Elementary dashboard

Describe the bug
We had a jump in versions from v0.14.1 to v0.15.1 due to an oversight in our deployment script. That's been sorted, and things work fine for the most part except how freshness tests are shown on the dashboard. It looks like elementary now sees the freshness test as both a generic, and freshness type test as opposed to just freshness before.
Old version:

New:

Notice the 1 of each kind of test detected on most of these models. We haven't changed anything in the model specifically, and the freshness test is the only kind of test defined on it:
models:
  - name: engage_campaign_members
    description: desc
    tests:
      - elementary.freshness_anomalies:
          timestamp_column: created
          config:
            severity: warn

To Reproduce
Steps to reproduce the behavior:

Go to the elementary dashboard.
Click on the tests under "Freshness"
Test type "generic" is displayed instead of freshness.
But, if you navigate to the model where the freshness test is added, it correctly shows that the test type is freshness rather than generic.

Expected behavior
It is expected that only the freshness test shows up in this view.
Screenshots
Previous:

Current:

Environment (please complete the following information):

Elementary CLI (edr) version: v0.15.1
Elementary dbt package version: 0.13.2
dbt version you're using: 1.8.1
Data warehouse Snowflake
Infrastructure details: dev and prod

Would you be willing to contribute a fix for this issue?
I am happy to contribute if I can get some guidelines.

Hi @arjunanandkumar ,
Thanks for submitting the issue.
Other than the different "test type" values, did you notice any change in behavior? Are the results the same?

Hi @ellakz,
Besides that, there is no change in behavior. I can see that it has run and passed if I navigate directly to the model where the freshness test is defined (Indicated by the green "1").

Hi @ellakz, I was wondering if you had any new insight on this.

Hey again @ellakz, we've located the issue. We completely oversaw this warning:
WARNING — You are using incompatible versions between edr (0.15.1) and Elementary's dbt package (0.13.2).
And this is something we have forgotten to handle on our end after we upgraded to dbt 1.8. I will close down this issue now.

Thanks for updating @arjunanandkumar !


Fix TLS custom CA for rabbitmq and nova

A couple of references to the default internal CA seem to have been missed in https://github.com/openstack-k8s-operators/openstack-operator/pull/713
Related: OSPRH-5600

/retest

/lgtm Thanks!

/test openstack-operator-build-deploy-kuttl

/test openstack-operator-build-deploy-kuttl

/test openstack-operator-build-deploy-kuttl

/test openstack-operator-build-deploy-kuttl


Change the current SwiftPM version from 5.3.0 to 5.4.0 (leaving the dev flag set to true)

ToolsSupportCore used to be part of SwiftPM, and for historical reasons the SwiftPM version is still provided by ToolsSupportCore (this should also be fixed, separately).  In the main branch the dev flag is still true; this will be set to false in the release branch.

@swift-ci please test

@swift-ci please test

we should be moving this to SwiftPM proper

Absolutely.  I filed rdar://73206574 to cover this but that would be more change than we would want at this point in the release.

we should be moving this to SwiftPM proper

Absolutely.  I filed rdar://73206574 to cover this but that would be more change than we would want at this point in the release.

Absolutely. I filed rdar://73206574 to cover this but that would be more change than we would want at this point in the release.

agreed

Absolutely. I filed rdar://73206574 to cover this but that would be more change than we would want at this point in the release.

agreed


(enhancement) installed: program_in_path

hi,
I'm not sure if you'd want to consider a new simple feature. Dotbot is fine (great!) the way it is, really.
But suppose you've got an extensive list of entries under - link:, and you'd want to run the install on a fresh, minimal distro. Wouldn't it be useful to check if a program is installed first? This check is also partly included in my amateur configs and I'm working to make them more modular and avoid broken functions and aliases. I'd like to link only the configs I need, no more. EDIT: specifying another config file in install is obviously the simple solution.
Maybe we could have dotbot skip the creation of directories and symlinks based of the condition that if an installed: $1 setting was specified in a list entry and which $1 &>/dev/null (or similar) evaluated false. A separate cleanuninstalled command could be used to also clean symlinks (that point to the dotfiles directory and aren't broken), when the specified program is not in $PATH anymore. And lastly, bin/dotbot could be given an option to ignore this feature.
Note that I don't mind branching out and removing entries from install.conf.yaml, but dotfiles aren't like typical repo's, and changes in this branch might not get merged into master soon. Not without much pain at least.
anyway, thank you for this wonderful tool, I love the installer and the submodule approach.

I'm glad you've found the tool to be useful! :smile:
Hmm, this is an interesting idea. It shouldn't be too hard to implement.
What's the harm with setting up symlinks for programs that are not installed? Like if you don't have vim installed, but you link up ~/.vimrc anyways, is that bad? If someone ends up installing the program later, then they'd need to re-run the installer.

You're right, though one reason I can think of is that it feels less intimidating when HOME is clean, and when configuration files just for installed programs are to be found in XDG-CONFIG-HOME.
I'm introducing someone to a basic GUI-less Arch linux system who will be using the same logon. The idea is that we learn (and get more used to) git workflow by adding tools and their configs one at a time, while I'd like to prepare and comment configs on a fully tooled-up machine. This sounds specific, I know. Again I have no real need for this feature, but I like to write down ideas as they come.
ps. you might know Rifle which has a modular approach, so that ranger only lists relevant choices when using the :run command.

Today, I stumbled upon this:

Dots offers the following features:

Configuration groups
When installing your dotfiles onto a new machine, dots offers you the
ability to select a specific 'group' of dotfiles that you would like to have
installed into that environment. By organizing your dotfiles into logical
groups (such as 'machine' groups) it's possible to only install the dotfiles
that are required by that environment.

Also, I didn't notice QiangF's suggestion before: to organise the .install.conf.yaml by applications [...] and install or export dotfiles by application names or user defined category. Maybe, if program_in_path is found, a group of dotfiles would be installed.

Hmm... given that it's fairly straightforward to achieve something similar to this (see #11), I think it's better to avoid additional complexity in Dotbot.


When reset, Livebook opens on a random port, breaking my localhost bookmark and Vimium exceptions

Is there a way to lock the port used? I have a bookmark to Livebook I'd rather not recreate every time. Also I disable the Vimium extension for Chrome on the Livebook port, so I can use Livebook's VIM key bindings.

If you're using Livebook Desktop, you can edit the ~/.livebookdesktop.sh file, there is an example how to set the port.

Also, please use discussions for questions, as there you can explicitly assign when something has been answered or not. :)

Thank you!

@wojtekmach, am I missing something? If I set
# This file is used to configure Livebook before booting.
# If you change this file, you must restart Livebook for your changes to take place.
# See https://hexdocs.pm/livebook/readme.html#environment-variables for all available environment variables.
LIVEBOOK_PORT=56558

# # Allow Livebook to connect to remote machines over IPv6
# export ERL_AFLAGS="-proto_dist inet6_tcp"

# # Add Homebrew to PATH
# export PATH=/opt/homebrew/bin:$PATH

Livebook opens on port 8080.

Even after restarting it? Are you sure you are accessing the desktop version? It is very rare it will land exactly on port 8080.

@bgoosmanviz I think you miss export, as in export LIVEBOOK_PORT=56558.

🤦 Yes, you are correct @jonatanklosko. Thank you 🙏🏻.

I was in I'm in a .env file and don't need to think about export mode.


Argonaut Resprint 3 test

This is the test for Argonaut Resprint 3, including testing for:

Medications
Immunizations
Goals
Devices

See https://github.com/argonautproject/implementation-program/wiki/Server-Re-Sprint-3 for more information

is this ready to go?

also does this cover existing sprint tests?

It is ready to go. The only phase 1 sprint it covers is sprint 4, so I moved it to phase 1.

This is now actually ready to go. The resprint tests now pull patient IDs from crucible, if passed in, and the resprint 3 test has better error messages

Also, I think these updates should help fix the issues that Sunanda is having.

update crucible when merged, bump the test versions


Upgrade to Micronaut AOT 1.1.0

This commit bumps Micronaut AOT to version 1.1.0, which adds a new
optimization for Netty. This optimization is disabled by default like
the others (starter can enable it). Because it's likely that they
will be more Netty optimizations in the future, there's a netty
configuration block within the aot one.

How can I tell Sonar that coverage is done via integration testing it can't pick up?

It reads coverage via JaCoCo, which currently it's only configured for unit tests

Yes, you can always ignore the failure, the Sonar check is optional.
However, if you could change micronaut-build to aggregate coverage from integration tests too, it'd be great.

However, if you could change micronaut-build to aggregate coverage from integration tests too, it'd be great.

It would have to inject the jacoco agent to the build under test and somehow aggregate results. I'm not even sure that's doable.


[Gitlab] Assignee will be Reviewer after backport

PR:

Backport:

Hey @shyim, I am not sure the sentence Assignee will be Reviewer after backport is true.
If I recall by default if --reviewers is not provided (or empty) and --no-inherit-reviewers is set to true (which is the default) the backport PR will set as reviewers the author and who merged the original one.
In this case the assignee is marked as reviewer in the backport because I guess it is the author of the original PR and the assumption is that the original PR author is a good candidate to review the backport one - or at least this was our initial use case.
PS: if you want to override this behavior you can just provide --reviewers arg with the list of reviewers of your choice

AHHH. Thanks for the explanation.

[edit]
If I recall by default if --reviewers is not provided (or empty) and --no-inherit-reviewers is set to true false (which is the default) the backport PR will set as reviewers the author and who merged the original one.
@shyim for correctness --no-inherit-reviewers should be false to actually inherit author and merger as reviewers in backport PR


Application theming

GTK Theme
Discord Theme
Firefox Theme via userChrome.css

Spotify rice
Firefox rice

Terminal font: Source Code Pro
Terminal emulator: Alacritty


Master to Live

Docs Build status updates of commit 4e3923e:
:clock10: Full build: the average full build time is 17 min(s) 39 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit 4e3923e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/Search-MailboxAuditLog.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Search-UnifiedAuditLog.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-TransportConfig.md
:white_check_mark:Succeeded
View (exchange-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


evil-jump-backward does not jump to a proper line after ycmd-goto-declaration

I am not sure if that is a problem of ycmd or evil or ycmd-evil interoperability, however, evil jumps have been  working fine for me so far.

Fixed by RTFM fo evil.
    (evil-add-command-properties #'ycmd-goto :jump t)
    (evil-add-command-properties #'ycmd-goto-include :jump t)
    (evil-add-command-properties #'ycmd-goto-declaration :jump t)
    (evil-add-command-properties #'ycmd-goto-definition :jump t)
    (evil-add-command-properties #'ycmd-goto-implementation :jump t)
    (evil-add-command-properties #'ycmd-goto-imprecise :jump t)
    (evil-add-command-properties #'ycmd-goto-references :jump t)
    (evil-add-command-properties #'ycmd-goto-type :jump t)


open cv attribute error

when running the extract table function cv2 throw an attibute error:
i am running the latest of the open-cv library.

AttributeError: module 'cv2.ximgproc' has no attribute 'niBlackThreshold'

i got the same error did you fine a solution

Getting the same error. Anybody with a solution ?

Same error

Also getting this error, anyone have an update?

Hey fellas, I got the solution:
You need to uninstall all opencv packages you have installed and install opencv-contrib-python-headless

It worked! Thanks CharlesMingus19!


LTD-5382-fix-hawk-dbt-platform

When migration to DBT Platform we had issue with CloudFront rejecting the request
when we send some content when we doing a GET request.
Then additional we required the hawk parameters to be empty else the hawkheader is missing hence verifyhawk function fails.

This has been smoke tested on dev2 and all appears to be working fine.


Adding Color Selection Option in hexcode Generator

issue number : #463

Done mam . I have added the screen shots .please check
On Fri, 27 Jan 2023, 10:30 Vanshita Mathur, @.***>
wrote:

@.**** requested changes on this pull request.
update the screenshot with your changes in the readme file
—
Reply to this email directly, view it on GitHub
https://github.com/TusharKesarwani/Front-End-Projects/pull/466#pullrequestreview-1272125009,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATCQWHXJWAMT7JP46LWMRSTWUNJARANCNFSM6AAAAAAUHZ5HRE
.
You are receiving this because you authored the thread.Message ID:
@.***>

@Harikaraja delete the old screenshot

Done mam please check
On Fri, 27 Jan 2023, 19:34 Vanshita Mathur, @.***>
wrote:

@Harikaraja https://github.com/Harikaraja delete the old screenshot
—
Reply to this email directly, view it on GitHub
https://github.com/TusharKesarwani/Front-End-Projects/pull/466#issuecomment-1406550040,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATCQWHSTFYVK4CK2JI3KNHDWUPIVPANCNFSM6AAAAAAUHZ5HRE
.
You are receiving this because you were mentioned.Message ID:
@.***>


Adding tests for all branches of OAuth2Credentials._do_revoke.

Also updating the _do_refresh_request tests to check the content sent.

Looks mostly good. Feel free to merge when you respond to or address my one comment.

Looks great.


Remove jquery dependency

We're barely even using jQuery, apart from $.Deferred(). Removing jQuery should make it lighter

@arthurcamara1, you're done with it, aren't you?

Yes. :)
On Monday, March 23, 2015, Angie the Fairytale<EMAIL_ADDRESS>wrote:

@arthurcamara1 https://github.com/arthurcamara1, you're done with it,
aren't you?
—
Reply to this email directly or view it on GitHub
https://github.com/Gapminder/vizabi/issues/22#issuecomment-84934808.

--
Arthur Camara
Software Engineer
Gapminder Foundation
www.gapminder.org


[AIRFLOW-2843] ExternalTaskSensor-check if external task exists

Jira

[x] My PR addresses the following Airflow Jira issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"

https://issues.apache.org/jira/browse/AIRFLOW-2843
In case you are fixing a typo in the documentation you can prepend your commit with [AIRFLOW-XXX], code changes always need a Jira issue.

Description

[x] Here are some details about my PR, including screenshots of any UI changes:

Background
ExternalTaskSensor will keep waiting (given restrictions of retries, poke_interval, etc), even if the external task specified doesn't exist at all. In some cases, this waiting may still make sense as new DAG may backfill.
But it may be good to provide an option to cease waiting immediately if the external task specified doesn't exist.
Proposal
Provide an argument check_existence. Set to True to check if the external task exists, and immediately cease waiting if the external task does not exist.
The default value is set to False (no check or ceasing will happen), so it will not affect any existing DAGs or user expectation.
Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[ ] My commits all reference Jira issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters (not including Jira issue reference)
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it.

When adding new operators/hooks/sensors, the autoclass documentation generation needs to be added.

Code Quality

[ ] Passes git diff upstream/master -u -- "*.py" | flake8 --diff

Codecov Report

Merging #3688 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #3688      +/-   ##
==========================================
+ Coverage   77.57%   77.57%   +<.01%
==========================================
  Files         205      205
  Lines       15771    15778       +7
==========================================
+ Hits        12234    12240       +6
- Misses       3537     3538       +1

Impacted Files
Coverage Δ

airflow/sensors/external_task_sensor.py
97.43% <100%> (+0.56%)
:arrow_up:

airflow/models.py
88.54% <0%> (-0.05%)
:arrow_down:

Continue to review full report at Codecov.

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


Play game auth not merge account with google signin and doesn't get PhotoUrl

I have firebase init user with google play game server auth code successfully. However even there was the same user with google account and I have set preventing authenticate multiple account with the same email, it still result in separate ID and doesn't merge with existing user
And PhotoUrl is null when authenticate with play game service. It should return at least the PlayGamesPlatform.Instance.GetUserImageUrl()
Are these the expected behaviour of play game auth?

@Thaina did you resolve your issue?  Any chance you can get the photo url from Play Games instead?

@stewartmiles I haven't test with PGS since unity firebase sdk 5.2
And it's not that I can't get photoURL from PGS directly. I just want to tell you that firebase SDK should do that from the firebase pipeline itself

Yep understood thanks for the feedback, we've filed this as a feature request.


ConfigCacheID output module validation

While debugging why a request was failing to get created in ReqMgr2, see json here [1], with this error message:
[24/May/2017:18:59:49] vocms0136.cern.ch <IP_ADDRESS> "GET /reqmgr2/data/request?name=etorassa_QCD-Fall11_R4-00024_T1_FR_CCIN2P3_MSS_v1_111229_145305 HTTP/1.1" 200 OK [data: 5972 in 1918 out 208826 us ] [auth: OK "/DC=ch/DC=cern/OU=com
puters/CN=pdmvserv/cmsdev04.cern.ch" "" ] [ref: "" "Python-urllib/2.6" ]
[24/May/2017:18:59:50]  Error: Traceback (most recent call last):
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/ReqMgr/Service/Request.py", line 189, in validate
    self._validateRequestBase(param, safe, validate_request_create_args)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/ReqMgr/Service/Request.py", line 84, in _validateRequestBase
    workload, r_args = valFunc(args, self.config, self.reqmgr_db_service, param)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/ReqMgr/Utils/Validation.py", line 144, in validate_request_create_args
    request_args)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/StdBase.py", line 847, in factoryWorkloadConstruction
    workload = self.__call__(workloadName=workloadName, arguments=arguments)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/TaskChain.py", line 271, in __call__
    self.setupTask(task, taskConf)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/TaskChain.py", line 151, in __call__
    self.func(self.obj, task, taskConf)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/TaskChain.py", line 412, in setupTask
    taskConf=taskConf)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/StdBase.py", line 420, in setupProcessingTask
    forceMerged=forceMerged, forceUnmerged=forceUnmerged, taskConf=taskConf)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/WMSpec/StdSpecs/StdBase.py", line 511, in addOutputModule
    lfnBase(unmergedLFN)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/Lexicon.py", line 413, in lfnBase
    return check(STORE_RESULTS_LFN, candidate)
  File "/data/srv/beHG1705h/sw/slc6_amd64_gcc493/cms/reqmgr2/1.1.3_cmsweb.patch1/lib/python2.7/site-packages/WMCore/Lexicon.py", line 466, in check
    "'%s' does not match regular expression %s" % (candidate, regexp)
AssertionError: '/store/unmerged/CMSSW_9_0_0/HLTPhysics/None/2017_05_24_18_56_HLTrefer_92X_dataRun2_HLT_v2-v1' does not match regular expression /store/results/([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\-_]+)/([a-zA-Z0-9\.\-_]+)/([A-Z\-_]+)/([a-zA-Z0-9\-_]+)

I notice the Task1 configuration defines 4 outputModules but only 2 have the dataset parameter (thus the filterName and dataTier parameters). Since the hlt* ones don't have it, we validate the LFN with a None datatier.
My question is, is there any reason to accept such output module definition? Should we instead raise a WMSpec* exception and fail it with a clear message?
That code is very old, so probably there was a reason to make it how it was...
[1]
    "Group": "DATAOPS",
    "ProcessingString": "2017_05_24_19_24_HLTrefer_92X_dataRun2_HLT_v2",
    "Multicore": 1,
    "SizePerEvent": 2000,
    "Memory": 3000,
    "PrepID": "CMSSW_9_0_0__ALCARELVAL-2017_05_24_19_27_HLTPhysics_Run2017A_v1_RAW_refer",
    "DQMUploadUrl": "https://cmsweb.cern.ch/dqm/relval",
    "SubRequestType": "RelVal",
    "RequestType": "TaskChain",
    "TimePerEvent": 1.0,
    "AcquisitionEra": "CMSSW_9_0_0",
    "CMSSWVersion": "CMSSW_9_0_0",
    "EnableHarvesting": true,
    "RequestPriority": "900000",
    "DQMConfigCacheID": "b890061457596de35b30eb625fa84d31",
    "RequestString": "HLT_refer_RelVal_294929",
    "GlobalTag": "92X_dataRun2_HLT_v2",
    "DbsUrl": "https://cmsweb.cern.ch/dbs/prod/global/DBSReader",
    "ScramArch": "slc6_amd64_gcc530",
    "ConfigCacheUrl": "https://cmsweb.cern.ch/couchdb",
    "Campaign": "CMSSW_9_0_0__ALCARELVAL-2017_05_24_19_27",
    "Task1": {
        "InputDataset": "/HLTPhysics/Run2017A-v1/RAW",
        "KeepOutput": false,
        "Campaign": "CMSSW_9_0_0__ALCARELVAL-2017_05_24_19_27",
        "GlobalTag": "92X_dataRun2_HLT_v2",
        "LumiList": {"294929": [[1, 33]]},
        "SplittingAlgo": "LumiBased",
        "ProcessingString": "2017_05_24_19_24_HLTrefer_92X_dataRun2_HLT_v2",
        "ConfigCacheID": "b890061457596de35b30eb625fa60e4c",
        "LumisPerJob": 10,
        "TaskName": "Task1",
        "AcquisitionEra": "CMSSW_9_0_0"
    },
    "Task2": {
        "GlobalTag": "92X_dataRun2_PROMPT_ECalPulseShapes_w21_2017",
        "InputFromOutputModule": "FEVTDEBUGHLToutput",
        "ProcessingString": "2017_05_24_19_24_HLTrefer_92X_dataRun2_HLT_v2",
        "SplittingAlgo": "LumiBased",
        "InputTask": "Task1",
        "ConfigCacheID": "b890061457596de35b30eb625fa75bde",
        "LumisPerJob": 1,
        "TaskName": "Task2",
        "AcquisitionEra": "CMSSW_9_2_0_patch2",
        "Campaign": "CMSSW_9_0_0__ALCARELVAL-2017_05_24_19_27",
        "CMSSWVersion": "CMSSW_9_2_0_patch2"
    },
    "TaskChain": 2

I forgot to point where the pset configuration is validated:
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/Cache/WMConfigCache.py#L557

@ticoann since you're back, maybe you know this reason?


create-admin-heatmap-view

Create the Admin heatmap viewing component.
Here's the design for reference!
closes #25

The /admin page would look like this after this branch has been merged


Utilize testing/quick for random generation

See the context at https://github.com/GetStream/stream-chat-go/pull/38#discussion_r361202613

Closing since where randomness is needed isn't exactly checking being random, instead to provide some name.


gcc missing in docker build

I found the following error while doing the edX course:
Executing this:
git clone https://github.com/bcgov/aries-endorser-service.git
cd aries-endorser-service/docker
./manage build
./manage start --logs

Failed in build process:
error: command 'gcc' failed: No such file or directory

I found two different errors, but not that one.  I’m running on Linux, and the build was fine except:

hard-coded docker-compose which only works on docker 1.x (vs. docker compose on v2.x)
There are two “ports” entries in the “Author” section of the docker-compose.yml section.

Once I fixed those, everything seemed to build fine.
Not sure how gcc could be missing on your system but not mine, since the gcc should be running in Docker, not on the host machine.  It might be helpful to see the log showing on what step you saw the error.

I’ll do a PR for the two issues I did see.

Fixed the two errors in #31 .  Did not see an issue with gcc, but perhaps try again with the updates to the docker-compose.yml?  If you can create it again, please add details -- what platform are you on, and please include the full log of the run.
Thanks


AUI-2027

Sorry, slight correction to a test

Just started reviewing :) :octocat: Sent from GH.

Pull request merged.


How to implement Custom DefaultAudioItem with my custom Items?

How to implement Custom DefaultAudioItem with my custom Items.
I want to use more than title and album title I want to implement more than the current implementation
DefaultAudioItem(audioUrl: item.mp3Path.replaceTom3u8(), artist: item.singerName, title: item.title, albumTitle: item.singerName, sourceType: .stream, artwork: image)
How to achieve that?

Solved!


Badcase when fileprocessing angular html

<img ng-if="foo > 1" src="icon.gif">

icon.gif will not be replaced by revved one.

This is the regexp that make your file to not be processed:
<img[^\>]*[^\>\S]+src=['"]([^'"\)#]+)(#.+)?["']

@xtang currently working on html parser instead of regexp to fix this issue are tons of others as well.


Server kicks me while trying to get through a nectere portal

ErrorLog.txt

Please upload a full log from the logs folder in your minecraft server folder.
Thanks!

This is caused by the server missing the Nectere dimension when the player tries to teleport to it. The previous version of Heart of the Machine had an issue where it would not create the Nectere dimension on dedicated servers, though this can also happen if you added Heart of the Machine after creating the world. This issue has been fixed, but in order to force the creation of the Nectere dimension on your server for a world that doesn't have it already, you just need to create a file named force-hotm in the same directory as the server.jar and restart the server.

However, I should make it so that attempting to teleport in a server that is missing the Nectere dimension will just send you a chat message instead of kicking you.

Currently the quick fix for dedicated servers is to add a file named force-hotm in the same directory as the server's server.jar.
I feel this is a bit of a hack and there needs to be a better way to configure retroactively adding the Nectere dimension to a world.

I am closing this issue because the crash and kick are technically fixed by 6046515 which is a part of the 0.1.2 beta release available on CurseForge. I will be continuing discussion of the retro-generation configuration in a separate issue: #3.


RefOrCallback link does not lead to API docs

Hello,
On the page about builtin directives (https://lit.dev/docs/api/directives/#ref) the link for RefOrCallback does not lead to the API for RefOrCallback. It instead just leads to the top of the page.

Thank you! This has been addressed. https://lit.dev/docs/api/directives/#RefOrCallback now links correctly.


[Q] How android version is created?

It's probably not the best place to ask questions but I didn't found any better.
So, how android build is created?

@kpiekara android build with electron app base is it possible? maybe you need to wrap this into react native wrapper to make it work in android if i am not wrong.


Window decoration ?

What is the window decoration on the browser in the readme screenshot ?

See #2


URL with local param is odd

Internally, url is passed as /maps?locale=ja and some page generate new URL like /maps?locale=ja/geosearch. This may cause some probrems.

find out whole feature of this problem and it's impact
make an issue to upstream if needed

For example, in geosearch you encounter an error.

Clicking rectify or other tabs in maps route with ja locale not cause ajax page partial rewrite.

broken KML in ja locale. Inner URL is not well formatted.


Makefile manages local virtual environment

Using virtualenv to manage virtual environment. pipenv operates inside the manually created virtual environment.
With this we should be able to stop using test.py to build the project.

@braxtonmckee this is the first PR


Not possible to use sqlx both in a proc-macro crate and in the main crate !?

Some context : I'm building (or trying) to build an admin system à la django, taking some inspiration from the query! macro.
I'm generating actix route and handlers from introspection of the database, with a proc-macro generating the code.
in the proc macro crate, I'm calling sqlx to introspect the db, and I have this in dependencies in Cargo.toml
sqlx = {version = "0.5", features = ["sqlite", "offline", "runtime-async-std-native-tls"]}
in the main crate Cargo.toml dependancy, I have that
sqlx = {version = "0.5", features = ["sqlite", "offline", "runtime-actix-rustls"]}
the compilation on the proc-macro crate works ok, but when compiling the main crate that has the proc-macro crate in depencies, Ive got this error:
compile_error!(
22 | |     "only one of ['runtime-actix-native-tls', 'runtime-async-std-native-tls', \
23 | |      'runtime-tokio-native-tls', 'runtime-actix-rustls', 'runtime-async-std-rustls', \
24 | |      'runtime-tokio-rustls'] can be enabled"
25 | | );

It seems to me that proc-macro and  main compilation are done in separated steps, so this should not be a problem ? Any idea if it's an sqlx problem ? Do you know a work around ?

When you compile a crate for all dependency all the requested features are worked out by cargo so if you enable one feature in one dependency and another feature in another dependency then you will only have one version of the crate with each feature enabled on it.
You cannot have more than 1 async runtime enabled so thats why you have a compilation failure.


tt

Problem encountered on https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

Provide details about the problem you're experiencing

Please provide more details


Setting the environment

Nice plugin!  I'm trying to figure out how to deploy with different environments (e.g. Dev, Staging, Prod) without changing my Aurelia configuration file.  What would you recommend?  I was thinking about using document.location.host to set my environment.  Is there a better way?

Ah, yes. Good question. The solution you posed would definitely work. It is a little late for me, so I can't really think of anything at the moment. Would there be value in having this kind of smart environment checking built into the plugin itself?

It would be nice to have a standard approach for this supported in the plugin.  I was hoping you could either document a good pattern for this in your Readme or build it into the module.  Catch you on the other side of your night :)

Absolutely agree. I have started on an idea I have for configuring dynamic environments the plugin will pick up. In the master branch I've started a little WIP. Essentially the idea I have is a method called setEnvironments and during the config phase you pass in an array of environments and hosts to map. Then the plugin just checks. I've updated a README with what the syntax will look like (in the master branch).

That looks really simple and powerful.  This plugin was already immediately added to my project when I saw it.  That was the last bit I needed.  Thank you!

No problem @wshayes
I have just released a new version 1.0.3 which has dynamic environments added in. You can either have the concept of dynamic environments using the hostname or do it the old fashioned way: https://github.com/Vheissu/Aurelia-Configuration/releases/tag/1.0.3