working #304

Codecov Report
Attention: Patch coverage is 53.57143% with 13 lines in your changes missing coverage. Please review.

Project coverage is 84.56%. Comparing base (ccf72d1) to head (3e0e575).
Report is 1 commits behind head on master.

Files with missing lines
Patch %
Lines

src/components/sources/SourceAnnotation.jsx
25.00%
9 Missing :warning:

src/components/sources/Source.jsx
0.00%
2 Missing :warning:

...mponents/annotation/PlannotateAnnotationReport.jsx
85.71%
1 Missing :warning:

src/components/sources/FinishedSource.jsx
83.33%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #305      +/-   ##
==========================================
- Coverage   84.79%   84.56%   -0.23%
==========================================
  Files         114      116       +2
  Lines        3406     3434      +28
  Branches      726      730       +4
==========================================
+ Hits         2888     2904      +16
- Misses        478      490      +12
  Partials       40       40

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


Add redis as cache backend option

This is great.  With this, to pass tests locally one needs memcached and redis running.  I'm thinking that after this is merged, I'll add some environment checks so that the memcached and redis tests are only run if the appropriate service exists.

Thanks for working on this.  You should be able to fix the linting errors by doing tox -e format.

i get this error like async call, but i'm sure i used sync function of redis. due to i'm not very familiar with CI.  maybe i need some help.
large_image/cache_util/rediscache.py:60: error: Argument 1 to "len" has incompatible type "Union[Awaitable[Any], Any]"; expected "Sized"  [arg-type]
large_image/cache_util/rediscache.py:65: error: Incompatible return value type (got "Union[Awaitable[Any], Any]", expected "bool")  [return-value]
large_image/cache_util/rediscache.py:79: error: Argument 1 to "loads" has incompatible type "Union[Awaitable[Any], Any]"; expected "Buffer"  [arg-type]
large_image/cache_util/rediscache.py:114: error: Incompatible return value type (got "Union[Awaitable[Any], Any]", expected "int")  [return-value]
large_image/cache_util/rediscache.py:143: error: Value of type "Union[Awaitable[Any], Any]" is not indexable  [index]
large_image/cache_util/rediscache.py:151: error: List or tuple expected as variadic arguments  [misc]

I think redis doesn't type response from the client aside from a very general type, so I'd use some judicious casts.  From your current checkin, I think the following diff would clean up the type and lint issues:
diff.txt

@nipeone Thank you so much for adding this.  I'll make a follow on PR to make it so the redis tests are run conditionally to make it easier to test locally if redis isn't available.


Implement Canadian Business Numbers and Tax Accounts, Closes #1504

Signed-off-by: Rob Warren<EMAIL_ADDRESS>Description
This PR implements entities for the taxation authority of the Government of Canada, the Canada Revenue Agency and a definition for Business Numbers (BN).  Definitions for Corporate, HST (VAT), Import/Export and Payroll Tax accounts, whose numbering scheme is derived from the Business Number. Note that the RZ program is not an account.
Fixes: #1504
Checklist:

[X] I'm familiar with the FIBO developer quide. My contribution meets all the requirements described there.
[X] My contribution follows the principles of best practices for FIBO.
[X] My changes have been reconciled with latest master and no merge conflicts remain.
[X] This PR is related to exactly one issue. The issue is referenced by using a GitHub keyword such as "fixes", "closes", or "resolves".
[X] Hygiene tests have been applied by a PR with "(WIP)" in title.
[X] The issue has been tested locally using a reasoner (for ontology changes).

Since all checks have passed, I "unwipped" this pull request.

Closed in favour of #1521.


"Timestamp file does not exist"

I keep getting Timestamp file does not exist on startup of the container. This causes the script to not even load up

Is this still an issue?

I tried to manually create a Timestamp file, but it then got stuck on starting the script up. Maybe I'm doing something wrong, I just deployed it via the command from the dockerfile that is suggested

You shouldn't have to create it. It should automatically be created within the container only. There appear to be some upstream issues currently though, so maybe wait until the next release and see if the issue persists.

Ill check again then and keep you posted.

Upstream fix is out. It should work now.

sadly it still doesnt create the timestamp file on my end. Tried recreating the whole container and repulling the image

Can you provide the stdout logs of the container?

_twitch_drops_miner_logs.txt

Are you sure that your config and cache file are mounted correctly? - Because that miner is not doing much and the timestamp file is created on drop progress.

yes they are mounted correctly and show up in the host volume

Maybe its a specific problem with my docker installation but so far i didnt face any other issues, so its quite weird. Maybe if somebody else faces a similar issue we might be able to resolve it as i dont think there are any other ways to debug this.

Try the following: delete all config and cache files and re-create them from a GUI instance of the program (start with a fresh clone from master).
Then move them over (never re-use the login cookies), mount them and paste the exact docker command you used.

Manually adding all the files did the trick. I noticed that they all showed up as directories on the host machine. By repacing them everything seems to work now. Timestamp got created as well. Thanks for the help. Still kinda weird how that happened

My guess would be that you were perhaps in the wrong folder (current working directory) when creating the container.
If files do not exist at the relative location Docker expects them, it'll simply create and link in empty directories.
Always nice to be able to help!


Announcement Feature improvements

Small improvements for the announcement feature

[ ] Text Wrapping is not correct?

[ ] Button Text should be customizable. I think here the button text should be "Try It" instead of "Read More"

[ ] Link to open in new tab

[ ] Wysiwyg text editor as it is HTML content.

@pavanjoshi914

@satu0king working on it!! :+1:

@satu0king working on it!! 👍

Awesome. I added a couple of additional improvements in the issue, please check.

https://github.com/froala/wysiwyg-rails
this gem is to be integrated for 4th checkpoint?

https://github.com/froala/wysiwyg-rails
this gem is to be integrated for 4th checkpoint?

This looks amazing! However we are already using a text editor for project page description and assignment page description. Probably just use that for now.
@aayush-05 @nitin10s does this froala text editor look better?

https://summernote.org/
@pavanjoshi914 can u research on other text editors
https://awesomeopensource.com/projects/wysiwyg-editor

https://github.com/froala/wysiwyg-rails
this gem is to be integrated for 4th checkpoint?

This looks amazing! However we are already using a text editor for project page description and assignment page description. Probably just use that for now.
@aayush-05 @nitin10s does this froala text editor look better?
Update: Froala is not free, so not an option for us.

ohk i was not aware  of text editor already present got it in editor folder will use that !!!

https://summernote.org/
@pavanjoshi914 can u research on other text editors
https://awesomeopensource.com/projects/wysiwyg-editor

on it!!

We are currently using this: https://alex-d.github.io/Trumbowyg/
It's not the most feature-rich, but very small ~20kB (comparison: SummerNote is ~100kB). I would recommend the current one since our usage isn't much in terms of fancy text styling.
If we go by the current one, it has already been abstracted as a rails partial, and would require one-line change to incorporate for this feature.
cc: @satu0king

poked around the list of the editors except simiditor and summernote  some lacks ui some lacks features
found current one always better than them...
as compared with size i agree with @aayush-05

if we put url in the link without protocol like "www.circuitverse.com" it opens localhost:3000/www.google.......
url must have https or http
is this needs to be corrected?

if we put url in the link without protocol like "www.circuitverse.com" it opens localhost:3000/www.google.......
url must have https or http
is this needs to be corrected?

Current Behavior seams fine.


Flutter websocket credential for web

I need to use websocket in flutter web project. WebSocketChannel works, but I need to use authorization. So I need to add header information. I used IOWebSocketChannel for this, but the web platform does not support dart.io. Do you have any other solution?

@MuharremCetin
Check this issue and underlying comments and see if it helps to answer your question.


Intuitive logs

Removed cache logs
Use DefaultLogger in tests
Add txRequest parameter to logger methods for optional txRequest address inclusion

Pull Request Test Coverage Report for Build 1143

11 of 17 (64.71%)  changed or added relevant lines in 4 files are covered.
3 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.4%) to 83.725%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/Router/Router.ts
3
9
33.33%

Files with Coverage Reduction
New Missed Lines
%

src/Config/helpers.ts
3
25.0%

Totals

Change from base Build 1139:
-0.4%

Covered Lines:
668

Relevant Lines:
766

💛  - Coveralls


Track entropy across eras

The Shelley consensus (Praos) needs access to the initial entropy when we transition from Byron to Shelley; however, the Byron consensus state (PBFT) does not track this. We therefore need explicit support in the hard fork combinator to track entropy across all eras.

Turns out this won't be necessary; it is sufficient to take the hash of the genesis block. #2097 replaces this ticket, but it's an optional one.


Modify events API to show only assigned events for repairers

This depends on #108
Task
Modify the current /api/event so that it only returns events that they are assigned to if their role is a repairer.
Ensure that it still returns all events if the user role is not a repairer.
Possible Implementation

Grab the logged-in user's ID using getAuth()
Use the service class to get the current role of the user from clerk. Have a look at UserService to get the role provided a userId.
If the user role is a repairer modify the query accordingly. Have a look at the OR operator for prisma.

Additional Information
The API tests will fail and you will probably have to mock the getRole function from UserService to always return the repairer for you to test out.

Frontend for this issue is in place - pages/repairer/events index.ts.
When issue is complete, edit this page to ensure a proper backend call.

#111have unlinked this issue from their work


Bump Dependencies #9143863910

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/9143863910

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Replace Dep with New Go 11 Modules

Enabled Go 11 Modules; it is the new way to manage dependencies from Go team. much cleaner and easier than ever before. it allows to put the project anywhere without the need to have it inside $GOPATH!
I've updated Makefile too, removed dep and added mod instead and also update vendor with all required packages that were resolved by go modules (refactored, much better)
For more info about new Go 11 Modules, https://github.com/golang/go/wiki/Modules

@kelseyhightower any chance on getting this merged?


BeagleBlack release needed at 2.85.6+rev4 or greater

Release needed to deliver COMMS cape boot fix.
User needs to be informed in https://jel.ly.fish/a4407e62-aa2b-4869-ae28-9595df589a05 when release is available in production.

Fixed in production release 2.85.16


1.21 fabric uncrafting table recipe issue

so i installed the 1.21 v1.3.6 mod and when i checked for the recipe i did not want to show i am using JEI but even if i use the recipe that appears on the mod menu i still does not want to craft. I don't know if its my computer that's bad or the mod itself so if anybody can help me i would really appreciated.

issue has been four days already.


server: only allow list+watch in cross-cluster

Signed-off-by: Steve Kuznetsov<EMAIL_ADDRESS>

@sttts thoughts on how to wire this... ?


Getting a NoneType on my input

Name changed to Anon for privacy purposes.
Traceback:
"C:\Users\Anon\Downloads\Downloader~\Downloads\xvideos>python xvpl-dl.py https://www.xvideos.com/favorite/31668773/best
🔞 🍆 💦 XVIDEOS PLAYLIST DOWNLOADER (xvpl-dl)
🛠  settings:
custom_dl_dir:
dedupe_all: True
📚 playlists queued:
➡ https://www.xvideos.com/favorite/31668773/best
📥 commencing download...
⏳ initialising playlist...
➡ https://www.xvideos.com/favorite/31668773/best
Traceback (most recent call last):
File "C:\Users\Anon\Downloads\Downloader~\Downloads\xvideos\xvpl-dl.py", line 128, in
playlist = Playlist(pl)
File "C:\Users\Anon\Downloads\Downloader~\Downloads\xvideos\xvpl-dl.py", line 47, in init
page = Page(page_url)
File "C:\Users\Anon\Downloads\Downloader~\Downloads\xvideos\xvpl-dl.py", line 110, in init
self.extract_video_urls()
File "C:\Users\Anon\Downloads\Downloader~\Downloads\xvideos\xvpl-dl.py", line 114, in extract_video_urls
video_elements = videos_block.find_all(attrs={self.id_attrib: True})
AttributeError: 'NoneType' object has no attribute 'find_all'

I'm very newbie with coding, I'd like to know if you found the solution for this error, I'm trying to download a playlist w/ a lot of videos. Please, help us

I think I've managed to get it working but I need to do a bit more testing to be sure.  I'll post a PR once I am though I don't know if this repo is active or not


[os-base] Bump kernel to 4.0

Could you please bump the kernel to 4.0? kmem leaks in cgroup were fixed (here are more details)

I just want to point out that it has been already merged 4.0 into boot2docker and works just fine!

Currently we track upstream Ubuntu kernels.  We are using the kernel from 15.04 which is 3.19.  We will switch to 4.0 when 15.10 comes out.  In RancherOS v0.4 we are making it easier to run with a custom kernel so you can swap out the kernel with a 4.0 if you choose.
Down the road I would like to produce two flavors of RancherOS.  A stable kernel and a vanilla Linux upstream but right now we aren't quite there in term of supporting that.

Closed in favor of #574


Fix argument order in classic GT backend bindings

Description
This PR modifies the GT backends (in the original toolchain) to emit arguments in API signature order to the C++ bindings (bindings.cpp). This fix resolves the error described in issue #365.
Requirements
Before submitting this PR, please make sure:

[x] The code builds cleanly without new errors or warnings
[x] The code passes all the existing tests
[x] If this PR adds a new feature, new tests have been added to test these
new features
[x] All relevant documentation has been updated or added

Thank you @egparedes, your excellent feedback has been implemented and tested.

bors try

Resolves #365.

Hi Eddie, very sorry, we think your initial fix is actually the proper one, i.e. parameter order in bindings should match the order in the stencil signature (as is currently implemented in the GTC backends). I'll roll back your latest changes. Hope that's fine.

bors try

bors try

Thank you both for getting this merged!


Portal item collision

Description
Fixes how we get the duplicate PortalItem's id by searching by item title rather than just getting the first item in the list. Previously we were just retrieving and deleting whatever item was first returned from the AGOL account (I hope we didn't delete anything important while testing...), so we would still encounter collisions on subsequent runs.
Type of change

[x] Bug fix
[ ] New sample implementation
[ ] Sample viewer enhancement
[ ] Other enhancement

Platforms tested on:

[ ] Windows
[ ] Android
[ ] Linux
[x] macOS
[ ] iOS

We could add a case where we get a 409 error but the item title isn't found, but would that be overkill?

I dunno, I think it's fine without additional 409 handling.


[Android] Implement the API to clear cache for single file.

This patch is to supply an API to clear partial cache.
User could transfer the url to ClearCacheForSingleFile() to clear the
cache for this url.
Add test case for ClearCacheForSingleFile().
BUG=XWALK-4609

The trybot seems not to be triggered.

This looks like a problem on GitHub's side: according to its status page, it's under another DDoS attack, and in our case it's causing at least the pull request hooks not to be delivered.

@fujunwei Yes, it should be documented.

@lincsoon @halton @axinging PTAL, thanks.
@axinging clearCacheForSingleFile() should also be wrapped with XWalkView.post()?

ping @lincsoon @halton @axinging, thanks.

LGTM

LGTM

usr play three website'ex: http://xxx.com/gamex.html',
i want remove one cache .so ,i use clearCacheForSingleFile, like this:
clearCacheForSingleFile('http://xxx.com/gamex.html'); ???
it's not work ~ how i do ,pls help ~ _ ~
btw:
how set cache mode in crosswalk ?


highlight nav item in onPageNav ToC when scrolling (add scrollspy)

🚀 Feature
Highlight the current section in the onPageNav ToC that the reader has scrolled to, either by a background color or bold or adding a customizable CSS class.
Basically, the way scrollspy works in Bootstrap.
Have you read the Contributing Guidelines on issues?
Yup.
Motivation
If a page has a long ToC (i.e. most of our tutorial pages have 9-10 steps), it would make it a lot easier for the reader to know where they are if the current step they have scrolled to is somehow highlighted in the ToC.
Pitch
This could be a universal feature in Docusaurus 2.0. I think it would make Docusaurus sites look even more professional.

https://getbootstrap.com/docs/4.0/components/scrollspy/#fat

I know you can use Bootstrap and implement it that way, but for various reasons we didn't want to have to import Bootstrap just for one feature.
This solution ended up working for me - it could be incorporated into Docusaurus 2.0 quite simply IMO: https://github.com/Khan/KaTeX/pull/1557/files

@endiliey can i work on this?

@tanhauhau it's yours!
I've added an "issue: claimed" label so that others will know not to start work on the issue. If you change your mind about the issue, no worries! Just let me know so that I can remove the label and free it up for someone else to claim.
I'll check in with you periodically so that we can keep the task updated with the progress.

@tanhauhau Thank you! This is how we ended up implementing it, if you need an example: https://docs.stackery.io/docs/using-stackery/dashboard/

@bildungsroman - Hi. Unrelated to this issue, but I am curious if you are willing to put stackery.io on our user showcase page? https://docusaurus.io/en/users

I'd love to! Should I open a PR to do that?

Absolutely. Please do.


add setup theming to theming page in settings

No content

Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @monicow in #requests.

Closing this because we removed it for now due to lag. Not We can re-open this or create a new one for when we find a better solution


[WIP] Apply Operand Closure clean up

What do these changes do?

Compute logic key for Apply Operand before tiling.
While tiling, extract cell_contents of closure from op.func, put to supervisor through StorageAPI using logic key as data_key.
While executing, get closure from supervisor and restore cell_contents back to op.func closure.

Related issue number
Fixes #3193
Check code requirements

[x] tests added / passed (if needed)
[ ] Ensure all linting tests pass, see here for how to run them

Some suggestions are here: https://github.com/mars-project/mars/issues/3193#issuecomment-1204708564

Can we add some tests to check that closure cleanup are actually executed?


Why auc<0.5 auc=1-auc?

In your evaluation code:
if auc < 0.5: auc = 1 - auc
Why??

If AUC is smaller than 0.5, we can treat 0 as anomaly and 1 as normal, and this brings a new AUC value that equals 1 - AUC.
In our experiments, all AUC are larger than 0.5, so this case is never used.


Don't call sqrtf when axis already normalized

Optimization to avoid unnecessary sqrt calls in MatrixRotate when axis vector is already unit length or the zero vector.

@dbechrd Nice! Thanks for the improvement! :)


Sketch 45.2 generate only Black color

Hi, I get the same issue here. Any clues about solving the issue ?
Thanks for your time.


AttributeError: module 'numpy' has no attribute 'product'

numpy only has function as of np.prod instead of np.product
Which version of numpy is np.product available in?

I had a same issue. Just change line 96 in "stats.py"
return _np.product(1 + returns) ** (1 / len(returns)) - 1
-> return _np.prod(1 + returns) ** (1 / len(returns)) - 1
then It'll work again.

numpy.product was deprecated in numpy 1.25, with this PR and removed in numpy 2.x.
This should be a quick and simple find all and replace, since np.prod has been around since at least numpy 1.7 and the requirements for this package ask for:
https://github.com/ranaroussi/quantstats/blob/fa0a91a42400978bcc95f5f2fb2cf20e6f7af56c/requirements.txt#L2


plz help me, ros-foxy- libg2o

I've been suffering from this issue for a few days. I've installed all the files. I got the foxy version. After installing, when I do the rosdep installation, I get the following error.
$rosdep install --from-paths src --ignore-src -r -y
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
scanmatcher: Cannot locate rosdep definition for [libg2o]
graph_based_slam: Cannot locate rosdep definition for [libg2o]
Continuing to install resolvable dependencies...
#All required rosdeps installed successfully
If I ignore and proceed with the installation
Processing: ndt_omp_ros2]
--- stderr: ndt_omp_ros2
In file included from /usr/local/include/pcl-1.14/pcl/pcl_base.h:47,
from /usr/local/include/pcl-1.14/pcl/filters/filter.h:42,
from /usr/local/include/pcl-1.14/pcl/filters/voxel_grid.h:42,
from /home/sejin/slam_ws/src/lidarslam_ros2/Thirdparty/ndt_omp_ros2/include/pclomp/voxel_grid_covariance_omp.h:42,
from /home/sejin/slam_ws/src/lidarslam_ros2/Thirdparty/ndt_omp_ros2/src/pclomp/voxel_grid_covariance_omp.cpp:1:
/usr/local/include/pcl-1.14/pcl/filters/boost.h:46:1: note: #pragma message: This header is deprecated. Please include the needed boost headers directly. (It will be removed in PCL 1.15)
46 | PCL_DEPRECATED_HEADER(1, 15, "Please include the needed boost headers directly.")
| ^~~~~~~~~~~~~~~~~~~~~
/usr/local/include/pcl-1.14/pcl/filters/boost.h:46:1: note: #pragma message: This header is deprecated. Please include the needed boost headers directly. (It will be removed in PCL 1.15)
/usr/local/include/pcl-1.14/pcl/filters/boost.h:46:1: note: #pragma message: This header is deprecated. Please include the needed boost headers directly. (It will be removed in PCL 1.15)
/usr/local/include/pcl-1.14/pcl/filters/boost.h:46:1: note: #pragma message: This header is deprecated. Please include the needed boost headers directly. (It will be removed in PCL 1.15)
Finished <<< ndt_omp_ros2 [3min 3s]
Starting >>> graph_based_slam
Starting >>> scanmatcher
[Processing: graph_based_slam, scanmatcher]
--- stderr: scanmatcher
there is an error like this.

It seems the PCL 1.14 you installed on your own is causing trouble.

I think g2o can be installed with 'sudo apt install ros-foxy-libg2o'.

I think g2o can be installed with 'sudo apt install ros-foxy-libg2o'.

I already installed this.

It seems the PCL 1.14 you installed on your own is causing trouble.

okay i will delete pcl 1.14 and try again.
My question is if veodyne is SLAM working on foxy, is this possible?

Using this package, you can perform SLAM with Velodyne on ROS2 Foxy.

Due to inactivity, I'm closing this issue. If there are still concerns, please open a new issue. Thank you.


hardlink creation is not picked up

Hardlink creation is not noticed. Don't know if this is a bug in fsevent/fsevent-sys, or if it's just how the Apple File System Events API works, or if there is some other problem.
Regular file creation, and even deletion of hardlinks are noticed and reported though.
Steps to reproduce:

On an APFS file system on macOS Catalina, create a directory that we will watch. As an example, let's do:
mkdir -p ~/tmp/hello/world/

Create a file somewhere outside of the watched directory structure.
touch ~/tmp/hello/somefile

Use the fsevent crate to watch the directory that we created in step 1 (~/tmp/hello/world/).

Create a regular file in the watched directory.
touch ~/tmp/hello/world/one

Notice that the file creation is picked up as expected.

Create a hardlink inside of the watched directory.
cd ~/tmp/hello/world/ && ln ../somefile .

The hardlink creation is not noticed by fsevent.

The fact the the deletion of hardlink is noticed but not their creation looks like a bug for me... 🔍


approx_eq_ulps() ?

Choosing a good epsilon for comparing floats is tricky.   Floats close to 1.0 and floats way out there should probably be compared using quite different epsilons.   Leaving that up to the library consumer is too much of a punt, IMHO.
I think it's more useful to specify the maximum allowable number of floating-point representations separating the two numbers being compared, otherwise known as ULPs (units in the last place, or units of least precision).   IEEE754 data is stored so that when interpreted as 2-s complement integers, sort in the same order.  So casting to integer, and subtracting, can give you the number of representations separating two floats.
I've used something like this (f32 example):
impl FloatApproxCmp<i32> for f32 {
    fn ulps(self, rhs: f32) -> i32
    {
        // Setup integer representations of the input
        let ai32: i32 = unsafe { mem::transmute(self) };
        let bi32: i32 = unsafe { mem::transmute(rhs) };
        ai32 - bi32
    }

    fn approx_cmp(self, rhs: f32, ulps: i32) -> i32
    {
        // Get exact equality out of the way.
        // This nicely also handles -0 compared to +0
        if self==rhs { return 0; }

        // Handle differing signs as a special case, even if
        // they are very close
        if self>0_f32 && rhs<0_f32 { return 1; }
        if self<0_f32 && rhs>0_f32 { return -1; }

        let diff: i32 = self.ulps(rhs);
        match diff {
            x if x.abs() <= ulps => 0,
            x if x < 0 => -1,
            x if x > 0 => 1,
            _ => 0
        }
    }

    fn approx_eq(self, rhs: f32, ulps: i32) -> bool
    {
        let c :i32 = self.approx_cmp(rhs, ulps);
        c==0
    }
}

@aepsil0n

I think this is a very reasonable change for floating point numbers. I must admit, that I've been using some workaround to achieve something numerically similar in my projects using nalgebra (mostly multiplying epsilon by one of the numbers to compare, but the ULPs seem more efficient and and more adequate for floating point math).
As far as this library is concerned, whose main applications probably use some floating point type, I think we can do it like that. However, considering more abstract mathematical objects we should see how this relates to more general metric spaces.

That's an interesting approach. Though I am not sure we should do this by default (i-e. in .approx_eq) instead of the common epsilon-based solution as I think most people will have the latter in mind when using it.


Update-MarkdownHelp is generating inappropriate errors for end-user

In this simple module, I added a new function and updated a couple of parameter attributes. I made sure to import the module manually in advance.
These errors should be caught by typical error handling and presented as actionable errors to the end-user.
The .md files were generated by PlatyPS with no manual changes. I'm attaching an image of the errors, the .md files, and the module.

PlatyPSErrors.zip

Tested this with 0.14.1 and got the same error. Need to retest after conversion to the markdig engine.

Tested this with 0.14.1 and got the same error. Need to retest after conversion to the markdig engine.

The design has totally changed in Microsoft.PowerShell.PlatyPS v1.


Remove dependency on id

Currently, id IDENTITY column is required i Logs table; however, there are scenarios where this column is not needed. As an example if we want to analyze logs we will not use row lookup by id or update row by id. Usually we will scan entire table or some range of values by timestamp, aggregate some values, etc. In that case identity/primary key column is useless. In addition, identity column with primary key might slow downs logs because even a heap table is faster for ingestion compared to the clustered index. Also, primary key will slow down operations if we use clustered column store index, which is perfect for logging due to the high compression.
Having that in mind, could you remove dependency on primary key/clustered index?

Sounds like a worthwhile direction to explore - are you interested in spiking it up and collecting some benchmarks @JocaPC?
Cheers!

It could be argued that ordering by the IDENTITY column gives you a definite ordering-tie-breaker in the case that one or more identical Timestamp values were written.
However, it seems very likely most real-world log queries will specify ORDER BY Timestamp rather than id. Even more importantly, even if they do sort by id, log tables can be enormous which means filtering results to a Timestamp range is also so likely it shouldn't be ignored.
This argues strongly for dropping the id column but applying a clustered index to the Timestamp column, because the only time a clustered index makes good sense is in exactly that scenario: the column(s) are overwhelmingly the most likely to be sorted and/or range-limited (which is also why it's somewhat silly to follow Microsoft's advice to create them on IDENTITY columns -- who selects id BETWEEN 500 and 600 in the real world?)

We would like to have a PK that is larger than an int as it affects how we get rid of old logs..

@radenkozec my original question was could we completely remove the column that has IDENTITY property. I would need either heap table or table with clustered columnstore index that don't have any identity/index because it should be faster for load.

I see no reason it couldn't be made optional. Indexing ought to be optional as well.
And even though it isn't really related to the OP, @ttugate's request could be easily served with a SQL bigint option (equivalent to a c# long or Int64).

So to summarize, the various config options requested or discussed here include the following, with some pointers I picked up while talking with a professional SQL DBA about this earlier today at work:

Clustered id column -- the default, as required today... the clustered index is basically not all that useful but this should probably remain the default for backwards-compatibility purposes.
No id column at all -- unindexed heap per @JocaPC -- this should have great bulk insert performance, but a possible drawback is overall reduced write performance when you start adding non-clustered indexes to avoid table scans. This would be a case-by-case implementation decision which could potentially be mitigated in some usage scenarios by leaving indexes offline and doing a nightly rebuild.
Nonclustered id column -- heap with indexed PK per @radenkozec -- a reasonable compromise, bulk insert should still perform better than today's default, but slightly reduced compared to no PK at all (since the PK is indexed), but other non-clustered indexes will reference the PK -- this two-stage read slightly reduces query performance (first it reads the covering index, then reads the PK index to find the heap row) but slightly improves non-clustered write index performance compared to a pure no-PK heap.
Optional bigint datatype -- per @ttugates -- should have zero measurable impact. Might even make sense as the default.

This probably ties into #81 which proposes adding the ability to create an index on added columns (and I assume standard columns as well, particularly the timestamp). If you're doing either heap option, you probably want to index other columns -- and probably with an option to default them to offline.
And if we do all of this, it probably needs a Wiki page to explain the options and the implications.
One thought for @JocaPC: Going back to your opening statement in your original post, I'm just thinking about the code, I haven't checked to be sure, but I doubt the sink itself actually requires id if you create the table yourself ahead of time...

I tried it again and I believe that it requires Id column.
I have used default configuration with auto-create-table option to generate a valid initial table schema.
Then, I have removed Primary key/index on ID column from auto-generated table and it works fine.
Then, I have dropped Id column and nothing is inserted. There are no errors.
In the SQL profiler I don't see failed INSERT statement, I see the following:
   select @@trancount; SET FMTONLY ON select * from [dbo].[Logs] SET FMTONLY OFF exec ..sp_tablecollations_100 N'[dbo].[Logs]'

When I have Id column, I see that after this statement is sent the following statement:
insert bulk [dbo].[Logs] ([Message] NVarChar(max) COLLATE SQL_Latin1_General_CP1_CI_AS, [MessageTemplate] NVarChar(max) COLLATE SQL_Latin1_General_CP1_CI_AS, [Level] NVarChar(128) COLLATE SQL_Latin1_General_CP1_CI_AS, [TimeStamp] DateTime, [Exception] NVarChar(max) COLLATE SQL_Latin1_General_CP1_CI_AS, [Properties] NVarChar(max) COLLATE SQL_Latin1_General_CP1_CI_AS) with (CHECK_CONSTRAINTS, FIRE_TRIGGERS)
I guess that it first sends FMTONLY ON to check the table schema and then if the schema matches it send bulk insert command. I tried to find it in code, but I don't see this check. Maybe it is even part of ADO.NET Bulk Insert command, but I don't know how this could happen.

That FMTONLY bit is generated by SqlBulkCopy.
Reference source here: https://referencesource.microsoft.com/#System.Data/System/Data/SqlClient/SqlBulkCopy.cs,545e0701deaee989

Interesting. SET FMTONLY has been deprecated for several years (as of SQL2012, I think).
I see the dependency in this sink now. When it populates bulk copy rows, it references a DataTable here and the sink's trait class automatically adds an id column here. When I said I didn't think there were dependencies I was thinking that method was only used for auto-create, sorry about that.
Should be easy enough to remedy when the other id-related options are sorted out.

I've completed the initial implementation of the four options I listed earlier, but I want to try to devise some performance tests to determine whether it makes any difference. If anyone else would like to play around with this, you can grab a copy of my changes here.
https://github.com/MV10/serilog-sinks-mssqlserver/tree/issue_69
I guarantee it compiles and all unit tests pass (none written for this new functionality yet), but it is otherwise almost totally untested at this point.
From a config standpoint, StandardColumn.Id is part of the enum now (meaning it can be removed), and ColumnOptions.Id adds a BigInt property (default false) and a ClusteredIndex property (default true).
Since I'm an optimist, it's already in the docs but please give feedback if you feel I've misstated anything:
https://github.com/MV10/serilog-sinks-mssqlserver/tree/issue_69#id-column-options
I'm guessing I'll know whether I want to PR this in a few days, but I don't have a true SQL Server setup handy for testing, this will all be local, which is nice in that it eliminates network variances, but it's on a machine optimized as a graphics workstation which is probably about as dissimilar as you can get from a real SQL Server (or a cluster or a million other realistic configurations).
I plan to average the timing of 10 runs of 500,000 rows to new, empty tables with the current default clustered configuration, non-clustered, no id, and those same three again but also with a non-clustered TimeStamp index, as well as the clustered/non-clustered id as bigint.
I'd really love it if anyone else has time to run performance tests.

Big round of applause for @JocaPC rasing this issue: after brutalizing my SSDs with tens of millions of rows of log events, the results are pretty interesting. The short version is that if you don't need the Id column, initial indications are that you should probably get rid of it. I was also surprised that a bigint Id column had such a visible impact. It's worth noting these results were consistent across many variations on my test parameters ... if I wrote 50K rows instead of 500K, generally the decimal point just moved. The number of rows just helped magnify the differences between the options, whereas the number of passes smoothed out any noise from system background activity.
On each pass, I completely delete and re-create the database and the log table, which ought to prevent SQL Server from pulling any optimization tricks between passes. However, I do set the initial database size to 400MB to eliminate random overhead from growing the database file.
The run below is for 10 passes, each writing 500K rows. These are timings in seconds, and "var" is the variance between the fastest and slowest passes. I found it interesting that a clustered PK  almost always had the greatest variance (and a relatively large variance), no matter what parameters I used.
                                       avg---  var---  low---  high--  row/sec
clustered int ......................   34.891  06.049  33.914  39.963  14330
clustered bigint ...................   35.780  09.363  34.612  43.975  13974
nonclustered int ...................   26.111  00.165  26.056  26.221  19149
nonclustered bigint ................   26.354  00.113  26.304  26.417  18972
clustered int, timestamp index .....   38.979  00.654  38.778  39.432  12827
clustered bigint, timestamp index ..   39.494  00.195  39.400  39.595  12660
nonclustered int, timestamp index ..   33.536  02.779  32.832  35.611  14909
nonclustered bigint, timestamp index   34.444  06.070  33.242  39.312  14516
no id column .......................   19.830  01.529  19.576  21.105  25214
no id column, timestamp index ......   26.136  06.688  25.014  31.702  19131

It should come as no surprise that increasing the batch size has a dramatic effect. (I think we should definitely update the README to give guidance to consider a much bigger batch size, with the obvious caveat about risk-tolerance.)
The table above uses the default 50-row batch, but here are the results with a 1000-row batch.
                                       avg---  var---  low---  high--  row/sec
clustered int ......................   11.615  05.156  09.587  14.743  43048
clustered bigint ...................   12.570  05.117  09.653  14.770  39777
nonclustered int ...................   10.119  02.724  09.302  12.026  49412
nonclustered bigint ................   10.570  03.098  09.348  12.446  47304
clustered int, timestamp index .....   14.124  06.316  11.099  17.415  35401
clustered bigint, timestamp index ..   13.063  04.543  11.083  15.626  38276
nonclustered int, timestamp index ..   14.174  05.499  12.037  17.536  35276
nonclustered bigint, timestamp index   13.423  03.299  12.025  15.324  37249
no id column .......................   07.825  03.059  07.053  10.112  63898
no id column, timestamp index ......   09.829  02.813  08.919  11.732  50870

The other side of the coin is querying the log, and that's a more complicated issue to simulate and benchmark, since everyone's needs will vary so widely. I'm open to suggestions about what might constitute a good yet relatively simple suite of tests. I'm thinking about logging a series of random numbers in a relatively small range which are written to a custom property column, then querying for a specific value as well as a range of values. I think that might best illustrate how a nonclustered index interacts with a clustered PK index, a nonclustered PK, and a raw heap row pointer.
Whenever this PR is merged, I'll point my test app at the dev NuGet package and put it into a repo in case anyone else wants to play around with it.

Good results from the query test, too.
First, the numbers:
Testing 100 queries on 1000000 rows, each reading a range of values.
Database is sized for 1M rows and is rebuilt for each test.
Possible values are 0 - 999999, query is BETWEEN 500000 AND 750000.
Platform timer is high resolution? True @ 4605424/sec.

                                         avg---  var---  low---  high--  reads
clustered int ...................... wr  00.223  00.138  00.212  00.350  249740
clustered bigint ................... wr  00.233  00.131  00.230  00.361  249740
nonclustered int ................... wr  00.244  00.131  00.240  00.371  249740
nonclustered bigint ................ wr  00.263  00.144  00.257  00.401  249740
clustered int, property index ...... wr  00.054  00.145  00.051  00.196  249740
clustered bigint, property index ... wr  00.062  00.160  00.058  00.218  249740
nonclustered int, property index ... wr  00.060  00.135  00.056  00.191  249740
nonclustered bigint, property index. wr  00.060  00.128  00.057  00.185  249740
no id column ....................... wr  00.246  00.133  00.240  00.373  249740
no id column, property index ....... wr  00.058  00.129  00.054  00.183  249740

Nothing too surprising here, table scans are bad, indexes are good. Clearly there are very tiny gains having a clustered index with a nonclustered covering index, but we knew that. However, they're effectively unimportant. If you're reading a quarter million rows of data, 4ms just doesn't matter.
For such small time-values, they were surprisingly constant no matter how many times I ran the test. Generally they varied only by a couple of ms, and they all showed the same general variations between each type of test. In this test, 1 million rows were written. The table has an integer UserId column that gets a random 0-999,999 value, then it is queried 100 times for values between 500K and 750K which should be about a quarter of the table, and the actual reads are very close to that (249,740 -- the Random seed was reset for each test using the row count). I did partial testing with up to 5000 queries but 100 was about where random system background noise smoothed out and every run became consistent.
These are cold cache reads. After logging the million rows, I execute a CHECKPOINT and before each query I execute a DBCC DROPCLEANBUFFERS to prevent SQL from buffering results. The query itself uses OPTION(RECOMPILE) to ensure SQL has to re-create the query plan each time. That's about as cold as it gets short of restarting the SQL service.
It took awhile to get my timings narrowed down to the bare bones query. Dapper is surprisingly slow (some of this code was originally hijacked from the unit tests). Using a straight .NET DataReader in firehose mode pulling back only the UserId int itself (to minimize overhead) gave the cleanest results. If you don't actually read the rows, all you're timing is how long it takes SQL to return a pointer to the first match. I considered doing an ORDER BY which would read all rows server-side, but the point was to time the various index references and heap lookups, not sort performance. I just wasn't sure which was more relevant, but sequential read seems more consistent to me.
I'm going to update the README a bit more then submit the PR.

I just thought of one more thing ... I'm not 100% SQL actually dereferences the heap pointer in this case -- I'm reading the value that is indexed, so maybe it comes from the index? In that case I'd need to return a different column. I'll run another quick test although I really doubt we'll see much of anything change.

Glad I remembered that bit, the difference is clear -- the two-step dereference in an index + heap scenario has a measurable cost. If read performance is your primary concern, sticking with the default clustered PK is likely your best bet. But I believe write performance is the most important factor in logging and the earlier tests demonstrate very clear benefits (much larger than the fractions-of-a-second differences of any of the read tests), so I'll still PR this one.
Testing 100 queries on 1000000 rows, each reading a range of values.
Database is sized for 1M rows and is rebuilt for each test.
Possible values are 0 - 999999, query is BETWEEN 500000 AND 750000.
Platform timer is high resolution? True @ 4605424/sec.

                                         avg---  var---  low---  high--  reads
clustered int ...................... wr  00.231  00.124  00.228  00.352  249740
clustered bigint ................... wr  00.243  00.124  00.237  00.361  249740
nonclustered int ................... wr  00.252  00.134  00.239  00.373  249740
nonclustered bigint ................ wr  00.255  00.131  00.242  00.373  249740
clustered int, property index ...... wr  00.240  00.134  00.235  00.369  249740
clustered bigint, property index ... wr  00.245  00.135  00.241  00.376  249740
nonclustered int, property index ... wr  00.256  00.130  00.245  00.375  249740
nonclustered bigint, property index. wr  00.265  00.119  00.261  00.380  249740
no id column ....................... wr  00.254  00.133  00.237  00.370  249740
no id column, property index ....... wr  00.254  00.143  00.237  00.380  249740

@MV10 - It's great to see these results. I see in #68 that you will try it with CCI too (just beware that you will need SQL2017 to put LOB in CCI), so could you add another dimension in your test?
SQL Server places LOB data off-row meaning that each row contains just a pointer to NVARCHAR(MAX) value. There is one table option that enforces SQL Server to put NVARCHAR(MAX) values up to some size in row, and larger vales are stored off-row with a pointer:
EXEC sp_tableoption 'dbo.Log', 'large value types out of row', 0;
It would be interesting to see what would be a recommended config option in this scenario.
More details are here: https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-tableoption-transact-sql?view=sql-server-2017

@JocaPC Let's keep CCI discussions in #68, I've drawn this one out enough! (And hopefully it'll be closed soon.)

I agree.
I would be happy to see a new NuGet version with this PR soon :).

This thread is where the BigInt question was raised, so I figure anyone subscribed is probably interested in this: The next PR I'm working on will deprecate that property in favor of a proper DataType implementation across all column definitions. That property uses .NEt's SqlDbType enum. The Id Standard Column accepts SqlDbType.Int or SqlDbType.BigInt.


Documentation of model development

Description of the issue:
It is not clear to me if this is outside the scope of standard-GEM, but I think it would be useful to come up with a language-agnostic guideline / template for how to document the development-process so it is easy for anyone to understand what and how the model reconstruction is performed, and how one can reproduce the current state of the model. One common practice (that I've used) is to have a script which performs the complete model reconstruction from any given starting point. This works reasonably well, but it still not trivial for someone else to trace the reconstruction unless the code is very well documented.
What do think is the best practice that should be recommended to users of standard-GEM?

What an interesting question! A git-based workflow allows for versioning of code and model. For the model, there will be an input model (prev commit), and an output model (new commit). It sounds like a great idea to follow the approach described above. I'm not sure what would be easy enough though, but I feel it ought to involve some way of glueing together the models and the code.

If you have the energy to guide and maintain it, I think a public gitbook could be a great place for such a guide. Thus it can be continuously updated from the community. It takes effort to steer such an effort and maintain a comprehensible whole, though.

Documentation of model curation is essential in GEM development. A well-defined Git-based workflow would help in achieving this goal, therefore should be within the scope of standard-GEM.

@Midnighter I am not familiar with gitbook, but from a brief look it seems like it might be too much work and something that is not neccessarily maintained along with the model on github. Maybe a more realistic option is to create templates for model reconstruction scripts (e.g. in MATLAB or python) that ensures a minimum of documentation along with the reconstruction.

Along those lines we could start thinking about a minimum information requirement that should be reported about the steps taken to create a GEM. Such guidelines exist already for various other aspects of science, in systems biology MIRIAM is a prominent example but there are plenty of others. Of course, there is Ines Thiele's famous protocol for generating a high-quality GEM, but we could start collecting key points what needs to go into such a documentation that @sulheim requests.

@Midnighter I am not familiar with gitbook, but from a brief look it seems like it might be too much work and something that is not neccessarily maintained along with the model on github. Maybe a more realistic option is to create templates for model reconstruction scripts (e.g. in MATLAB or python) that ensures a minimum of documentation along with the reconstruction.

I agree, gitbook was my recommendation for a more meta guide on how to construct models general, not to serve as documentation alongside one specific model.

In this context, I would like to discuss how one should organize model reconstruction and curation scripts as well as model files.
We are currently curating and re-organizing the Sco-GEM model folder (to adher to Standard-GEM template), see https://github.com/SysBioChalmers/Sco-GEM/pull/122.
We have encountered an issue where it is rather inconvenient to test / update curation scripts that has been used previously to update the model as the model file in the repository always is the latest version. E.g. if you have previously written and applied a script that is deleting a few model reactions, and you want to modify and rerun that script, you cannot test that script on the model file in the repository. One solution is to keep an archive folder with previous model versions, but believe there might be more clever solutions to this issue.
What do you think?

In this context, I would like to discuss how one should organize model reconstruction and curation scripts as well as model files.
We are currently curating and re-organizing the Sco-GEM model folder (to adher to Standard-GEM template), see https://github.com/SysBioChalmers/Sco-GEM/pull/122.
We have encountered an issue where it is rather inconvenient to test / update curation scripts that has been used previously to update the model as the model file in the repository always is the latest version. E.g. if you have previously written and applied a script that is deleting a few model reactions, and you want to modify and rerun that script, you cannot test that script on the model file in the repository. One solution is to keep an archive folder with previous model versions, but believe there might be more clever solutions to this issue.
What do you think?

But would an archive model folder not sort of defeat the purpose of git? Meanwhile, older releases can relatively easily be extracted from the local repository with e.g. git show refs/tags/v1.4.2:model/standard-GEM.xml > model_v1_4_2.xml.

But would an archive model folder not sort of defeat the purpose of git? Meanwhile, older releases can relatively easily be extracted from the local repository with e.g. git show refs/tags/v1.4.2:model/standard-GEM.xml > model_v1_4_2.xml.

Somewhat related to this, we are implementing an approach with Human-GEM to deal with old curation/reconstruction scripts that do not work with the current model version by moving them to a deprecated folder (I also like @sulheim's archive suggestion as a name). This would separate these scripts from those that are currently maintained, so there is no expectation that they should function as expected.
If one wanted to run an archived script, then they can checkout the commit when the script was last modified or used, when presumably the corresponding model version at the time of the commit would be compatible with that script.

Somewhat related to this, we are implementing an approach with Human-GEM to deal with old curation/reconstruction scripts that do not work with the current model version by moving them to a deprecated folder (I also like @sulheim's archive suggestion as a name). This would separate these scripts from those that are currently maintained, so there is no expectation that they should function as expected.
If one wanted to run an archived script, then they can checkout the commit when the script was last modified or used, when presumably the corresponding model version at the time of the commit would be compatible with that script.

@sulheim, a Yaml-based workflow implemented in Human-GEM may provide another option for curating GEMs.
Previously, we also used scripts for adding/removing reactions and making changes to model. As @JonathanRob mentioned, now we are archiving the old code and retiring the script-based approach. In the new workflow, only a Yaml format model file is retained in develop and other fix/feature branches. Given the human-readable feature, changes made to Yaml file are evident and clear enough so that script-independent curation is allowed.
For example, in the PR #213 a number of duplicated metabolites and reactions were removed by a series of commits, each of which resolves one duplicated met. In particular, the metabolite malthx_s and associated reaction EX_M02447[e] were deleted in this commit where the annotation files were also updated. With this work flow, the changes can be made either by code or manually, and conveniently reviewed afterwards. A couple of assisting code (testYamlConversion, sanityCheck) were provided as check points before and after making PR to avoid mistakes.
This workflow is still under development and refinement. But it seems that this works pretty well so far.

@sulheim, a Yaml-based workflow implemented in Human-GEM may provide another option for curating GEMs.
Previously, we also used scripts for adding/removing reactions and making changes to model. As @JonathanRob mentioned, now we are archiving the old code and retiring the script-based approach. In the new workflow, only a Yaml format model file is retained in develop and other fix/feature branches. Given the human-readable feature, changes made to Yaml file are evident and clear enough so that script-independent curation is allowed.
For example, in the PR #213 a number of duplicated metabolites and reactions were removed by a series of commits, each of which resolves one duplicated met. In particular, the metabolite malthx_s and associated reaction EX_M02447[e] were deleted in this commit where the annotation files were also updated. With this work flow, the changes can be made either by code or manually, and conveniently reviewed afterwards. A couple of assisting code (testYamlConversion, sanityCheck) were provided as check points before and after making PR to avoid mistakes.
This workflow is still under development and refinement. But it seems that this works pretty well so far.

That's an interesting workflow @Hao-Chalmers . Altough I understand that one can reproduce the model development by going through each individual commit and redo the manual curations, it sounds less tidy than having all edits documented in a script. I think it makes sense to only have the yaml-format in the devel folder though (but is that compatible with the COBRA toolbox in Matlab?).

@sulheim The yaml-format actually was adapted from Cobrapy. So you'd have built-in support under Python environment when using COBRA.
Yes, you can only keep the yaml file in devel and feat/fix branches for tracking model changes, then the scripts probably are not necessary (but they still can be kept, such as in an archive folder).

Reading this issue again, I find it an interesting discussion to continue. However, it would be very ambitious to construct a roadmap that would enable full reproducibility, including all the curation. Therefore, I propose to add the use of the deprecated folder to .standard-GEM.md and then convert this issue into a GitHub Discussion.

Ok. But isn't archive a better name than deprecated?

Ok. But isn't archive a better name than deprecated?

The message I am trying to send is attuned to the definitions as in the Merriam-Webster dictionary:
archive

a place in which public records or historical materials (such as documents) are preserved

deprecate

to withdraw official support for or discourage the use of (something, such as a software product) in favor of a newer or better alternative

That being said, I would appreciate more thoughts on the matter, especially that I feel more people are familiar with the term archive.


#33 Automatically annotate angular injections and massivley improve t…

What kind of change does this PR introduce? (Bug fix, feature,
docs update, ...)
New feature + dev performance improvement

What is the current behavior? (You can also link to an open issue
here)
You have to use x.$inject = []
JS watch is quite slow.

What is the new behavior (if this is a feature change)?
No need to use x.$inject = []
JS watch is very fast.

Does this PR introduce a breaking change? (What changes might
users need to make in their application due to this PR?)
None (it will still work with x.$inject = [])

Other information:

Great thanks, I think watchify is more faster in this particular case I'm going to add a coupple of comments on this one.

Can we address this one: https://github.com/moxie-leean/ng-web-app/pull/37#discussion_r58472747
Thanks.

Is it really important @mitogh ? We need to try and be more efficient with our PR's, something like this is not doing any harm and some might even see it as a useful feature.

Well is not but I think we should get ride of any code that does not provide so much value.


Special case reads remaining display for cdhitdup

Description
This change communicates the new meaning of reads after the cdhitdup changes. NOTE: it should only be committed after https://github.com/chanzuckerberg/idseq-dag/pull/252/files .

Tests

try in localhost, see updated display

Nice!!


Feat: email expired template

Added email expired template.
Fixed Math.isNaN is undefined error when phone validation is enabled.

LGTM! Thanks @AXeL-dev


[tracking-external] Refactor CAR Sink

Let's refactor this once https://github.com/Nullus157/async-compression/issues/246 is fixed

Originally posted by @aatifsyed in https://github.com/ChainSafe/forest/pull/3461#pullrequestreview-1631597485

@aatifsyed Has the bug been fixed?


Update ddl2cpp to handle constraints with argument list.

In the DDL files of the project I am currently working on, there are 'UNIQUE (col1, col2,...)' constraints. Those were not being understood by ddl2cpp.
I've added a simple workaround, so that our DDL files can be parsed. Feel free to either merge it or close this PR, if you don't like the workaround.

Nice, thanks!


Updates the code, saves periodMeterData in the MeterResponseData tabl…

…e as a Serializable

All is well.


Starting FastAPI 0.94.0 startup / shutdown events are decpricated

Starting of FastAPI 0.94.0 the "startup / shutdown" events are deprecated and the "lifespan" has been introduced:
https://fastapi.tiangolo.com/advanced/events/#lifespan
Would be great to have support of "lifespan" in taskiq-fastapi or example how to avoid duplication of startup / shutdown calls.

Hi and thanks for noticing.
The startup|shutdown are not yet deprecated. We will use them untill it's deprecated, because it works. If it won't, we implement it.

Well, it is not removed, but deprecated:
Alternative Events (deprecated)

:thinking: :thinking: :thinking: Okay. Probably it would be nice to implement.

@s3rius Is the below method acceptable?
I think we need some updated docs
@asynccontextmanager
async def lifespan(app: FastAPI):
    # Load the FastAPI app
    log.info("[bold green blink]App is Starting Up![/]", extra={"markup": True})
    if not broker.is_worker_process:
        log.info("Starting TaskIQ broker")
        await broker.startup()
    yield

    log.info(
        "[bold blue blink]App is Shutting Down Gracefully![/]",
        extra={"markup": True},
    )
    if not broker.is_worker_process:
        log.info("Shutting down TaskIQ broker")
        await broker.shutdown()

app = FastAPI(title="❤", lifespan=lifespan)

Sure thing.


Upgraded dependencies. Compiles successfully

@jasrajsb need to fix firebase runtime errors

@as1605 Could you please add some screenshots or screen recording having both the color schemes. Also attach the screenshots for pages that you changed.


Fix version subcommand output

Since we moved version package to its own repo we need to update
references to it in build time otherwise we get 'Unknown' for all
version fields.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: jwendell
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: douglas-reid
If they are not already assigned, you can assign the PR to them by writing /assign @douglas-reid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

bin/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/assign @sdake

@jwendell: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
be5d58498be37a8963e07aeefcf63a27b4e1322a
link
/test e2e-simpleTests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@jwendell: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
be5d58498be37a8963e07aeefcf63a27b4e1322a
link
/test e2e-simpleTests-master

prow/integ-pilot-k8s-presubmit-tests.sh
be5d58498be37a8963e07aeefcf63a27b4e1322a
link
/test integ-pilot-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: howardjohn, jwendell
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: sdake
If they are not already assigned, you can assign the PR to them by writing /assign @sdake in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

bin/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Apparently I approved this then a day later forgot about it and made the exact same change myself... Anyhow this is fixed in https://github.com/istio/istio/pull/14207 so closing
Thanks for the fix though!


Fixed Multiple console log issues

Platforms affected
What does this PR do?
What testing has been done on this change?
Checklist

[ ] ICLA has been signed and submitted to<EMAIL_ADDRESS>[ ] Reported an issue in the JIRA database
[ ] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
[ ] Added automated test coverage as appropriate for this change.

In function writeFile changed console.log("Successful file read") to console.log("Successful file write")

Cordova CI Build has completed successfully.
Commit     - Link
Dashboard - Link

Builder Name
Console Output
Test Report
Device Logs

Windows 8.1 Store
Link
Link
Link

Windows 10  Store
Link
Link
Link

Windows 8.1 Phone
Link
Link
Link

iOS
Link
Link
Link

Android
Link
Link
Link


Updates

Hi Martin,
here are some more updates.
At least for my, the current master fails make gputest because of the error bound changed in the first commit.
The second commit is really just a bugfix, especially for nlop_flatten.
Then we have the optimization for linop_plus.

Ok, that's unexpected. Let me investigate where the travis failure first appears.

I wonder whether we should simply check whether the lower-level forward operator is null?  Then the linear operator could stay as it is. Also better use CAST_MAYBE to do the type check rather then accessing the TYPEID directly. A cherry-picked two of the other commits. The gpu test works fine for me...

I have removed the gputest and have now changed it to use CAST_MAYBE. We still need to check whether we actually got a linop_data_t, so we still have two checks in the if() condition.


make check fails

Version:
v1.3.0 (uvbook master branch)
Platform:

Darwin Kernel Version 16.5.0: Fri Mar  3 16:52:33 PST 2017; root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64

Error from make check:
[%  90|+ 227|-   0|T   0|S   0]: fs_event_error_reporting
`fs_event_error_reporting` failed: exit code 6
Output from process `fs_event_error_reporting`: (no output)

let me know if this has been solved or you need more info

v1.3.0 (uvbook master branch)

The uvbook was recently added to our documentation. Can you try with the latest v1.x branch from this repo.

thanks @cjihrig


add foundry support

Closes #60

typescript check and linting wont be required, is it ok to remove and replace with just sol linting?


[question] Use a webview instead System browser

It’s possible to open a Webview for the login instead open the System browser?

Just out of curiosity, what would be the benefits?


Embedded Schematron

Enable validation using schematron embedded in dfdl xsd.
DAFFODIL-2446

Capturing the initial poc here for review as it progresses.
The TestEmbeddedSchematron demonstrates the capability, but still a bit of work to do.
Based on #452
draft todo

[ ] detect sch or xsd
[ ] doc in readme
[ ] tests with complex schematron
[ ] rebase after #452

A good thing to do with this (and the prior) PR that provide schematron, is to fix the JPEG schema that is published on github to use this new feature.  Version 1 would incorporate that JPEG schema's existing ".sch" schematron rules file. Version 2 would migrate those rules up into the DFDL schema itself, where IMHO, they belong.
Without the schematron validation, that DFDL JPEG schema is known to be very poor at rejecting bad data. It's the specific example where we learned it is very important to make DFDL schemas not only parse correct data, but reject invalid and/or malformed data. Without the schematron rules, this JPEG schema accepts all sorts of malformed stuff. This more powerful validator in this case enforces, not only validity, but well-formedness even.

reference

https://reference.niem.gov/niem/specification/sch-in-xsd/1.0alpha4/niem-schematron-in-xsd-1.0alpha4-2016-03-16.html
https://journal.code4lib.org/articles/13546
https://www.mulberrytech.com/papers/schematron-Philly.pdf

(some of these might make the readme, might not, here for posterity)

@rthomas320

If SVRL reports were generated would it be possible to commit those to git also?

I can post the SVRL generated by a unit test or two here in the PR.

Tests fixed, going to work through my checklist above.  BMP, GIF, and JPEG appear to be working... I need a generator for each of them to created mutated versions of each... :christmas_tree: :gift:
For now though things are close and I can reshape/add examples based on the feedback above.

If you are looking for negative tests, I recall the DFDL for JPEG without the schematron enforcement will literally accept /etc/termcap as a JPEG. Basically, any piece of line-noise bigger than some minimum is classified as a JPEG blob segment, and only the schematron rules enforce the proper positioning of these blob segments in a proper jpeg segment nest. I.e., the DFDL part does nothing to enforce the "grammar" rules of JPEG. So at least this one class of complete-line-noise negative examples for JPEG are easy.

Squashed and rebased

@rthomas320

If SVRL reports were generated would it be possible to commit those to git also?

A few examples of svrl output
<svrl:schematron-output title="" schemaVersion="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:schold="http://www.ascc.net/xml/schematron" xmlns:saxon="http://saxon.sf.net/" xmlns:iso="http://purl.oclc.org/dsdl/schematron" xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="time_low"/>
   <svrl:failed-assert location="/uuid[1]/time_low[1]" test="string-length(.)=8">
      <svrl:text>time_low wrong length</svrl:text>
   </svrl:failed-assert>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="time_mid"/>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="time_hi_and_version"/>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="clock_seq_hi_and_res"/>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="node"/>
</svrl:schematron-output>

<svrl:schematron-output title="" schemaVersion="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:schold="http://www.ascc.net/xml/schematron" xmlns:saxon="http://saxon.sf.net/" xmlns:iso="http://purl.oclc.org/dsdl/schematron" xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
   <svrl:active-pattern document=""/>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="first"/>
   <svrl:failed-assert location="/name[1]/first[1]" test="string-length(.) > 0">
      <svrl:text>first is blank.</svrl:text>
   </svrl:failed-assert>
   <svrl:fired-rule context="last"/>
   <svrl:failed-assert location="/name[1]/last[1]" test="string-length(.) > 0">
      <svrl:text>last is blank.</svrl:text>
   </svrl:failed-assert>
</svrl:schematron-output>

<svrl:schematron-output title="" schemaVersion="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:schold="http://www.ascc.net/xml/schematron" xmlns:saxon="http://saxon.sf.net/" xmlns:iso="http://purl.oclc.org/dsdl/schematron" xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
   <svrl:active-pattern document=""/>
   <svrl:active-pattern document=""/>
   <svrl:fired-rule context="first"/>
   <svrl:fired-rule context="last"/>
</svrl:schematron-output>

Any remaining concerns with this?  Work is complete unless there are changes requested.

Any remaining concerns with this?  Work is complete unless there are changes requested.

+1 Looks nice! Just a couple minor comments about the licenses and maybe add some CLI testing?

+1 Looks nice! Just a couple minor comments about the licenses and maybe add some CLI testing?

:+1: Looks really nice! Loving the recent improvements to the CLI tests, hoping that can be the basis for cleaning up all of our CLI test boilerplate in the future. Just need to get things passing on windows, and squash all the commits and I think this ready to merge.

:+1: Looks really nice! Loving the recent improvements to the CLI tests, hoping that can be the basis for cleaning up all of our CLI test boilerplate in the future. Just need to get things passing on windows, and squash all the commits and I think this ready to merge.

Windows issues fixed up, squashed and rebased.  Ready to go I believe.

Windows issues fixed up, squashed and rebased.  Ready to go I believe.

Looks good! I think you've got all the requisite +1's. Feel free to merge and resolve the Jira ticket.

Looks good! I think you've got all the requisite +1's. Feel free to merge and resolve the Jira ticket.


How to set JFIF with jpg format

Question about an existing feature
code sharp(result.data).withMetadata().jpeg({ quality: 100 }).toBuffer() output image is exif (file byte headerff d8 ff e1)
What are you trying to achieve?
want output image is jfif (file byte headerff d8 ff e0)
like this image avatar
When you searched for similar issues, what did you find that might be related?
some old android tv box  device,just show jfif jpg file,not support exif jpg
https://github.com/lovell/sharp/issues/700
https://github.com/lovell/sharp/issues/3855
Please provide a minimal, standalone code sample, without other dependencies, that demonstrates this question
        const result = await axios.get(picUri, {
            timeout: 30 * 1000,
            responseType: 'arraybuffer'
        })
        if (result.status === 200 && result.data) {
            return await sharp(result.data).withMetadata().jpeg({ quality: 100 }).toBuffer()
        }

libvips configures libjpeg to use ff d8 ff e1 as the first 4 bytes for images with EXIF metadata and ff d8 ff db ("raw") for images without EXIF metadata.
See https://github.com/libvips/libvips/issues/349

Got it. I need to conduct more in-depth research to solve my problem.


Added onClose event on qt-examples to fix issue 51

@marcomusy
I've added on-close events to the three qt-examples (qt-window, qt-window-split, qt-window-tabs).
Before applying this fix I had an error-window on closing the qt-tabs example. This is seems to have disappeared after this fix.
Note: checking if this really fixed it is difficult as the error does not always materialize. Probably because it depends on the speed and order of destruction of the objects and interactor.

Thanks @RubendeBruin !


Microtask data should be santized before passed to dataTable

Error in gsub(chr, specials[[chr]], text, fixed = TRUE) :
  input string ... is invalid UTF-8

No longer occurs when using DT library.


Add show and hide widgets to loosen up the API

This PR enables the user to provide more than material Icons without the need to change any of the current types in place.
I'm suggesting expanding the API to accept showPasswordWidget and hidePasswordWidget widgets.

Hey @arthurcohen , thanks a lot for the contribution!


Update json_schemas for new DOS roles

For this trello ticket.
See this PR on the frameworks repo.
DOS3 has three new specialist roles; data architect, engineer and
scientist. This updates the json_schemas to accept them.
Generated with
digitalmarketplace-frameworks/scripts/generate-validation-schemas.py,
with version 13.1.0 of the frameworks repo.

[WIP]-ness gone, should be ready.


‘Pay’ button is shown disabled when user opens ‘Pay Request’ page

See details here in bug report (ask Rossy)

Cannot reproduce this following the steps. Tried using wallet address request & phone number request. Possibly #276 didn't go through during their test? Their fee calculation feedback time is way too short considering my fee calculation took around ~50s in test.


Bugfix/dialog scene fix

fixed onDialogTimeExpired event handler
auto close "no-action" dialogs in order not to block the app forever
removed initial value of MainPrism's position prop in order to stop resetting the prism's position

@pleszkiewicz shouldn't this be PR to develop branch?


Add support for set_object request

https://github.com/rdeits/meshcat-python#set_object-data-format
https://github.com/rdeits/meshcat

Already supported


Sync DHCP leases between servers

Is your feature request related to a problem? Please describe.
Hello,
I don't understand how DHCP config works. If the 2 servers have the same config and they can be up at the same time (I know there is an option to enable/disable DHCP config sync).
And if the 2 servers are enabled, how active leases are managed ?
I am asking this because I am implementing a failover network and DHCP is the only component not yet redundant.
I would like Adguard sync to allow me have main and replica servers working together on the same ip scope.
Would it be possible ?
Thanks
Describe the solution you'd like*
To have a synchronisation 2 ways of DHCP leases between servers
Describe alternatives you've considered
The alternative is to split the scope between the 2 servers but not possible if more devices than IPs available.
Anything else?
Just thank you for your work !

Hi @Mattieug
I'm not a DHCP specialist, but as far as I know, it's not allowed to have multiple DHCP servers up the same time.
If you would need to sync leases, this would have to be a 2-way sync. Adguardhome-sync only supports one way origin -> replica.
2-way sync will not be a use case for this tool.

Without 2-way sync this would be prone to clients having same IP's on both DHCP instances. Considering you're seeking a "failover", you would have multiple options though:

run two adguardhome instances, with both being active DNS and DHCP servers. Don't sync the DHCP ranges between them, set separate range on both of them. Both DNS IP's are pushed to clients with the DHCP lease and both are used for DNS queries. The downside is that you get DNS stats split between two instances, not on a single pane.

run two adguardhome instances, with both being active DNS and DHCP servers. Don't sync the DHCP ranges between them, set separate range on both of them. You create a VIP with keepalived, which gets set on the MASTER adguardhome instance, that IP is pushed to clients with the DHCP lease and is only one used for DNS queries. This way you get DNS stats on VIP instance at the time, which would be mostly the MASTER adguardhome instance.

If MASTER is down, the BACKUP instance will contain the stats, but hopefully for just a short duration until MASTER becomes active and VIP is switched to it.  If MASTER is down, DHCP leases are still offered by the BACKUP adguardhome instance with its own DHCP range. If MASTER comes up and also DHCP with it, the clients with the BACKUP DHCP leases still continue to function with the VIP DNS IP, you wont see the hostname for them though, since DHCP leases were set on the BACKUP DHCP instance. When the leases expire, the MASTER DHCP instance will offer a new IP lease and you'll get full information about the hostname on the MASTER stats page.
BUT it can still happen that some clients will get a DHCP lease on the BACKUP DHCP instance this way and you'll get split stats when both adguardhome instances are active.

run two adguardhome instances, while only MASTER is being active DNS and DHCP server, but BACKUP instance container is stopped. Sync the adguardhome config.yaml file between them without using adguardhomesync (just regular rsync), where you change the DHCP range value after syncing using 'sed' to a range not used on the MASTER instance.

You create a VIP with keepalived, which gets set on the MASTER adguardhome instance, that IP is pushed to clients with the DHCP lease and is only one used for DNS queries. Use a script listening to the adguardhome instance on MASTER, which in case it's not available, runs 'docker compose up -d' on the BACKUP instance. This way only one DHCP server is always active on the network and you won't get the scenario with split stats while both instances would be running like in option 2 above. You will only have split stats in case MASTER is down. When MASTER gets back up, the keepalived script will shutdown the adguardhome container on BACKUP (DNS will work over VIP in both cases anyway) and MASTER DHCP instance will continue to hand DHCP leases when they expire on clients which got their IP's from the BACKUP instance.
I find the option 3 to be more "robust" on the long run, if avoiding split stats is the end goal. But yes, without two-way syncing of active DHCP leases, only a workaround like this is possible. Hope this helps.

Hello,
thanks for your quick answers.
@tdkl, I like your 4 options ! Very interesting...
Finally, I had configured my system using option 1 before your answer which is the simplest and perhaps the more robust. The biggest issue is that I have to manually copy to main server, personalised rules when clicking on authorize on a blocked request in the replica server interface before it is removed by the sync. But not a big problem for daily usage. If stats are on the 2 servers, it's just a little more complicated to consult them but nothing impossible. I don't do it each morning...
Just before installing the DNS/DHCP failover, I had secured my router/gateway using keepalived. I am using OpenMPTCPRouter (a fork of openwert) used to do failover of internet access. The software routers are configured MASTER/BACKUP with a VIP, only IP known by the clients. It works nice !
Thanks,
Matt.


SR-12336: URLSessionTask should allow extras resume()'s

Every .suspend() has to be balanced with a .resume() to resume a task
but multiple suspend()s or resume()s are allowed, so remove the check
that the suspend count was not going < 0.

Enhance the test HTTPServer by adding /get, /post, /put URLs that
require the HTTP method to match the endpoint and return the headers
as a JSON body.

@swift-ci test linux

yeah, It's good.  I was going to fix it

@swift-ci test linux

@Swift-ci please test linux


Migration tool should have a "report an issue" button

This button should take the user to a new github issue, prepopulated with information about the version of the tool being run, as well as appropriate labels (if the user is logged in and has the right to add labels).  Preferably it should go through a URL shortening service so that we can update the link after shipment if needed.
@kevmoo can help with the creation of a github URL as well as the URL shortening.
Additionally, if the server reported a stacktrace to the client (see #41392), the stacktrace should be included in the generated issue.

Note that @kevmoo is experimenting with the URL shortener.  It may not be possible to include a stacktrace in the generated issue after all.

It looks like there may have been some miscommunication about this feature.  My understanding from talking to @kevmoo is that since we discovered that the URL shortener won't pass through query parameters, we want to go back to the idea of using a direct link.  That way we can pre-populate the bug report with the SDK version, and a stack trace if that's relevant.
Currently the bug is just pre-populated with text that says Please include your Dart SDK version, which I don't think is what we want.

I thought that was a separate issue. I thought that this issue was just for a button that the user can press at any time. Then separately there was an issue that, when the preview tool hit a 500, the user was prompted to report this issue, with a stack trace pre-populated.
But I'm happy to add the SDK version to this link.

I'm working on this.

Thanks Sam!  You're right that the "report an issue when the preview tool hits a 500" feature and the "report an issue because the user just wants to report an issue" appear to be implemented as separate pieces of code, and have different behaviors.  The "report an issue when the preview tool hits a 500" does seem to populate the stack trace.  But it doesn't seem to populate the SDK version (instead asking the user to fill it in).  It seems to me that since we know the SDK version, we ought to populate it.
Do you want to do that as part of addressing this issue, or do you want me to file a separate issue for it?

I've addressed both in https://dart-review.googlesource.com/c/sdk/+/146461.


@csrf_excempt does not work on @app.route

Trying to set @csrf_excempt (from django.views.decorators.csrf import csrf_exempt) on a view decorated with @app.route does not work as expected – CSRF-Validation is still happening for POST requests.

Had the same issue; I ended up implementing the csrf token for non API views.
API views don't seem to have the issue unless you implement Django's session auth into them.


ImagesDataModule missing

When i compile the demo i am getting a
Module 'MainForm' links to module 'ImagesDataModule' which cannot be found in the current project error and cant find that file any where
appearently there is a data module with image lists to help skins for the menus to appear but it is not present with the demo source code.
if you ignore the image the demo runs without any of the menus

If you read the README.md:
Demo source build requires
AlphaSkins (commercial)
Common
BCControls
ImagesDataModule is found from Common.


modal delete button position issue

It appears to be incorrect since you are applying the style to the button inside a span, which should not be the case. This will cause issues, especially with test tools like Playwright, which waits for the element to be visible, enabled, and stable.
https://github.com/zakodium-oss/react-science/blob/fa300f8046149a9a4bdf78a227a82c8ee9f80ad4/src/components/modal/Modal.tsx#L118
https://github.com/zakodium-oss/react-science/blob/fa300f8046149a9a4bdf78a227a82c8ee9f80ad4/src/components/button/Button.tsx#L25-L29

Could we add a custom role or class to make it easy to access the delete button in the modal header?

@stropitek
WDT ? Can we address and resolve it for the upcoming release, which will include fixes for this issue as well as those already resolved in https://github.com/zakodium-oss/react-science/pull/592

Alternatively, I could trigger the button press even if the button is not fully ready from the Playwright perspective, this is something i need to check if you see that this change we can not do right now

Why is having a span wrapping an issue in general / with playwright?
There is a renderTarget prop in blueprintjs's Tooltip component which may help getting rid of the unnecessary span.

There is a renderTarget prop in blueprintjs's Tooltip component which may help getting rid of the unnecessary span.

@hamed-musallam Can you try this and create a PR?
https://blueprintjs.com/docs/#core/components/tooltip


multi: update readme with tx & pool fee details.

This updates the readme with detailed info on what pool fee constitutes as well as the source of tx fees for payout transactions. This also does some clean up.
This also adds the v1.1.0 release note to the repo for collaborative editing purposes, will be removed once its finalized.

This also adds the v1.1.0 release note to the repo for collaborative editing purposes, will be removed once its finalized.

It is actually a good idea to store release notes in the repository forever. Compared to using GitHub releases as a source of truth for release notes, not only this allows using Git/GitHub collaborative tools for text, it also makes the Git repo more self-contained and not depending on GitHub. The best practice I've encountered is to put a separate file in docs/release-notes for each new release.

Not sure if post-merge comments trigger a notification so cc @dnldd just in case.

That's right, thanks for bringing it up. Will proceed as advised.

Nice idea.

Not sure if post-merge comments trigger a notification so cc @dnldd just in case.

They do :)


calloc/realloc: Undetected out of bound pointer access

Hi,
Symbiotic does not detect a usage of pointer, that was allocated by calloc and then successfully resized by realloc. It happens with calloc exclusively, when malloc or realloc(NULL,...) is used, the invalid dereference is correctly detected.
#include <stdlib.h>

int main(void)
{
    char *ptr1 = calloc(1, sizeof(char));
    if (ptr1 == NULL)
        return EXIT_SUCCESS;

    void *ptr2 = realloc(ptr1, 2 * sizeof(char));
    if (ptr2 == NULL) {
        free(ptr1);
        return EXIT_SUCCESS;
    }

    char ch = *ptr1; /* error */
    (void) ch;

    free(ptr2);
}

Output:
$ symbiotic --prp=memsafety 0045-test.c
7.0.0-dev-llvm-10.0.0-symbiotic:7aa510d4-dg:8fd21926-sbt-slicer:ce747eca-sbt-instrumentation:ff
5d8b3f-klee:8340acee
INFO: Looking for invalid dereferences, invalid free, memory leaks, etc.
INFO: Starting instrumentation
wrapper: `which slllvm` failed with error code 1

INFO: Instrumentation time: 0.049263954162597656
INFO: Optimizations time: 0.020682096481323242
INFO: Starting slicing
[RD] error: no reaching definition for:   %14 = call i8* @realloc(i8* %13, i64 2) #4, !dbg !29
[DU] error: no reaching definition for:   %14 = call i8* @realloc(i8* %13, i64 2) #4, !dbg !29
[RD] error: no reaching definition for:   %21 = load i8, i8* %20, align 1, !dbg !42
[DU] error: no reaching definition for:   %21 = load i8, i8* %20, align 1, !dbg !42
[RD] error: no reaching definition for:   call void @free(i8* %18) #4, !dbg !36
[DU] error: no reaching definition for:   call void @free(i8* %18) #4, !dbg !36
INFO: Total slicing time: 0.00809478759765625
INFO: Optimizations time: 0.02225971221923828
INFO: After-slicing optimizations and transformations time: 2.8848648071289062e-05
INFO: Starting verification
b'KLEE: WARNING: undefined reference to function: __symbiotic_keep_ptr'
b'KLEE: WARNING: undefined reference to function: klee_make_nondet'
b'KLEE: WARNING ONCE: Alignment of memory from call "calloc" is not modelled. Using alignment o
f 8.'
b'KLEE: WARNING ONCE: Alignment of memory from call "realloc" is not modelled. Using alignment
of 8.'
INFO: Verification time: 0.03541874885559082
No error found.
NOTE: In the future, the result is going to be reported in SV-COMP format only with --report=sv
-comp switch
RESULT: true
INFO: Total time elapsed: 0.40175819396972656

EDIT: typo

Looks like a bug in slicing.

Correction: not a slicer but instrumentation. For some reason, the instrumentation does not mark the bad dereference as possibly invalid.

And back to the cycle: the instrumentation fails because the analysis from DG does not correctly model realloc. It does not mark the re-alloced memory as invalidated.

It looks like this issue has been fixed by one of the recent commits as well.  This test from aufover/aufover-benchmark now works as expected:
symbiotic --prp=memsafety 0060-test.c
8.0.0-pre-llvm-12.0.0-symbiotic:66916f64-dg:06c8ca8c-sbt-slicer:b0864a5b-sbt-instrumentation:ad1d134f-klee:10e5fae9
INFO: Looking for invalid dereferences, invalid free, memory leaks, etc.
INFO: Starting instrumentation
wrapper: `which slllvm` failed with error code 1

INFO: Instrumentation time: 0.05542731285095215
INFO: Optimizations time: 0.02001643180847168
INFO: Starting slicing
INFO: Total slicing time: 0.0196685791015625
INFO: Optimizations time: 0.019770145416259766
INFO: After-slicing optimizations and transformations time: 1.9311904907226562e-05
INFO: Starting verification
KLEE: WARNING: undefined reference to function: __symbiotic_keep_ptr
KLEE: WARNING: undefined reference to function: klee_make_nondet
KLEE: WARNING ONCE: Alignment of memory from call "calloc" is not modelled. Using alignment of 8.
KLEE: WARNING ONCE: Alignment of memory from call "realloc" is not modelled. Using alignment of 8.
KLEE: ERROR: /home/lukas/aufover-benchmark/tests/single-c/mem-basic-realloc/0060-realloc-use-old-ptr-2/0060-test.c:15: memory error: out of bound pointer
KLEE: NOTE: now ignoring this error at this location

 --- Error trace ---

Error: memory error: out of bound pointer
File: /home/lukas/aufover-benchmark/tests/single-c/mem-basic-realloc/0060-realloc-use-old-ptr-2/0060-test.c
Line: 15
assembly.ll line: 70
Stack:
        #000000070 in main () at /home/lukas/aufover-benchmark/tests/single-c/mem-basic-realloc/0060-realloc-use-old-ptr-2/0060-test.c:15
Info:
        address: 30:0
        pointing to: none

 --- Sequence of non-deterministic values [function:file:line:col] ---

 --- ----------- ---
Error found.
NOTE: In the future, the result is going to be reported in SV-COMP format only with --report=sv-comp switch
RESULT: false(valid-deref)
INFO: Total time elapsed: 0.5726990699768066


repository_name: 1.4.0-0 in 'kinetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository repository_name to 1.4.0-0:

upstream repository: https://github.com/CPFL/Autoware.git
release repository: https://github.com/CPFL/Autoware-release.git
distro file: kinetic/distribution.yaml
bloom version: 0.5.26
previous version for package: null

autoware_msgs

No changes

@dejanpan Is this a release test (like #15673) ?

actually no, this one is for real. more pkgs I will release in the next days.

great! I would suggest to use the actual repository name for the release rather than the placeholder repository_name then :wink:

one Q - when you release 1 pkg for different ROS versions - do you do all of them in one PR or you create several?

hmm, not sure where did repository_name come in. It is just in commit msg. Do you want me to amend that?

one Q - when you release 1 pkg for different ROS versions - do you do all of them in one PR or you create several?

we usually let bloom create PRs for us so it's mostly one ROS distribution at a time.
IMO it's better in general to do separate PRs because sometimes we want to synchronize merging PR for a given distribution and it makes it easier to revert them if a repository fails only for a specific distribution. But that is not a rule or a requirement

hmm, not sure where did repository_name come in. It is just in commit msg. Do you want me to amend that?

Looking at the release repository it looks like this is the name passed to the bloom-release invocation
You can rename the repository name it in the commit manually but you'll have to make sure that the resulting entry is placed in alphabetical order in the distribution file afterwards. So I usually rerun bloom with the right name

Great thx. Should I then close this PR and open a new one?
On Fri, Aug 4, 2017, 7:17 PM Mikael Arguedas<EMAIL_ADDRESS>wrote:

hmm, not sure where did repository_name come in. It is just in commit msg.
Do you want me to amend that?
Looking at the release repository it looks like this is the name passed to
the bloom-release invocation
https://github.com/CPFL/Autoware-release#repository_name-kinetic---140-0
You can rename the repository name it in the commit manually but you'll
have to make sure that the resulting entry is placed in alphabetical order
in the distribution file afterwards. So I usually rerun bloom with the
right name
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ros/rosdistro/pull/15696#issuecomment-320389061, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AABD4Cvgt0LASw668WmsOkvJFirnFXpLks5sU9C7gaJpZM4OuVPc
.

will fix repository_name through another bloom run.


PHAssets URI not working

Bug description:
Images with a PHAsset URI as src won't load. I am trying to display photos coming from the camera roll, that returns URIs like ph://xxx, with no success.
To Reproduce:
Load an html with an
Expected behavior:
Show the image
Environment:

OS: iOS

To Reproduce:
Load an html with an

I used an HTML tag and this paragraph was truncated, sorry.
An HTML with an IMG which SRC attribute is a PHAsset URI.


Will it be possible to set a theme via cli?

I'm trying to do set a different chrome theme according to system theme automatically. Can that be done programmatically?

Unless you can do this by javascript console (then you could use the "execute" command probably not.


Broadcasting not happening when multiple players more than 3 are added while using @waku/sdk

This is a bug report
Problem
When more than 3 users are added and subscribed broadcasting of messages happen randomly, certain users get the message and certain users doesn't get it and its been tested in a chrome.
waku version used is this: @waku/sdk": "^0.0.18"
and this is the line where the broadcasting of payload is been done.
const publicKeyMessageEncoder = createEncoder({
contentTopic: PublicKeyContentTopic,
symKey: PublicKeyMessageEncryptionKey,
ephemeral: true,
});
await waku.relay.send(publicKeyMessageEncoder, { payload });

Hi @sbnair,
While relay should work, note that js-waku has deprioritized the usage of relay in browser, and we recommend using light protocols (Light Push and Filter) instead of Relay
Can you please share more details around the messages received vs skipped? Are you able to identify any patterns, or is it completely randomized?
It would be helpful if you can share the entire code snippet you use to spin your js-waku nodes. Perhaps a branch or a gist would suffice.


Fix "[Errno 13] Permission denied"-error when using InfluxDB integration

Fix "[Errno 13] Permission denied"-error that occurs when using the InfluxDB integration by using snapcraft-preload part in snap. Underlying issue seems to be related to Python’s multiprocessing module that is blocked by AppArmour. Fixes #12.

Thanks, Snapcraft should build this within a few hours. :)

Nice! Seems to work fine with  latest/edge:  2022.4.7   2022-05-02 (495).