text:
makes HAMT iteration 10x faster

The HAMT iterator completely redesigned
before
Target            Operation   Impl                         Params  Count            Score  ±     Error    Unit
HashSetBenchmark  Iterate     slang_persistent               1000     18        4,299.731  ±     1.18%   ops/s
HashSetBenchmark  Iterate     slang_persistent                100     18       45,524.153  ±     1.77%   ops/s
HashSetBenchmark  Iterate     slang_persistent                 10     18      680,479.197  ±     1.31%   ops/s
HashSetBenchmark  Iterate     scala_persistent               1000     18      129,055.550  ±     0.24%   ops/s
HashSetBenchmark  Iterate     scala_persistent                100     18    1,437,694.285  ±     0.83%   ops/s
HashSetBenchmark  Iterate     scala_persistent                 10     18   22,035,129.813  ±     1.27%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent        1000     18       44,336.905  ±     1.08%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent         100     18      472,947.893  ±     1.33%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent          10     18    3,469,540.882  ±     0.70%   ops/s

Performance Ratios
================================================================================================================
  (Outliers removed: 30.00% low end, 10.00% high end)

Ratios slang / <alternative_impl>
Target            Operation   Ratio                                                    10        100       1000
HashSetBenchmark  Iterate     slang_persistent/pcollections_persistent              0.20x      0.10x      0.10x
HashSetBenchmark  Iterate     slang_persistent/scala_persistent                     0.03x      0.03x      0.03x

Ratios <alternative_impl> / slang
Target            Operation                                             Ratio          10        100       1000
HashSetBenchmark  Iterate            pcollections_persistent/slang_persistent       5.10x     10.39x     10.31x
HashSetBenchmark  Iterate                   scala_persistent/slang_persistent      32.38x     31.58x     30.01x

after
Target            Operation   Impl                         Params  Count            Score  ±     Error    Unit
HashSetBenchmark  Iterate     slang_persistent               1000     18       49,484.074  ±     0.26%   ops/s
HashSetBenchmark  Iterate     slang_persistent                100     18      522,937.431  ±     0.98%   ops/s
HashSetBenchmark  Iterate     slang_persistent                 10     18    4,728,144.061  ±     1.99%   ops/s
HashSetBenchmark  Iterate     scala_persistent               1000     18      130,241.725  ±     0.38%   ops/s
HashSetBenchmark  Iterate     scala_persistent                100     18    1,595,782.555  ±     1.03%   ops/s
HashSetBenchmark  Iterate     scala_persistent                 10     18   22,418,589.165  ±     1.87%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent        1000     18       45,362.049  ±     1.55%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent         100     18      471,520.387  ±     0.25%   ops/s
HashSetBenchmark  Iterate     pcollections_persistent          10     18    3,433,121.007  ±     3.10%   ops/s

Performance Ratios
================================================================================================================
  (Outliers removed: 30.00% low end, 10.00% high end)

Ratios slang / <alternative_impl>
Target            Operation   Ratio                                                    10        100       1000
HashSetBenchmark  Iterate     slang_persistent/pcollections_persistent              1.38x      1.11x      1.09x
HashSetBenchmark  Iterate     slang_persistent/scala_persistent                     0.21x      0.33x      0.38x

Ratios <alternative_impl> / slang
Target            Operation                                             Ratio          10        100       1000
HashSetBenchmark  Iterate            pcollections_persistent/slang_persistent       0.73x      0.90x      0.92x
HashSetBenchmark  Iterate                   scala_persistent/slang_persistent       4.74x      3.05x      2.63x

[Current coverage][cc-pull] is 95.53%

Merging [#1357][cc-pull] into [master][cc-base-branch] will decrease coverage by <.01%

File ...ArrayMappedTrie.java was modified. more

Misses 0
Partials +1
Hits -1

@@             master      #1357   diff @@
==========================================
  Files            86         86
  Lines          9992      10033    +41
  Methods           0          0
  Messages          0          0
  Branches       1803       1813    +10
==========================================
+ Hits           9546       9585    +39
  Misses          319        319
- Partials        127        129     +2

Powered by Codecov. Last updated by [d702207...e1235db][cc-compare]
[cc-base-branch]: https://codecov.io/gh/javaslang/javaslang/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/javaslang/javaslang/compare/d702207bdc25f7603e4b01c9efb5fe12ed75b1a9...e1235db539228728851eb554e847e2f5d022f706
[cc-pull]: https://codecov.io/gh/javaslang/javaslang/pull/1357?src=pr

Thx!

authors: codecov-io danieldietrich ruslansennov


text:
index.html

Nuevo cambio en la linea 61 del index.html en donde he añadido la localizacion de nuestra empresa

Se te ha olvidado poner la provincia, ya está cambiada en la linea 61

de acuerdo, tambien se me ha olvidado poner el numero de telefono

he puesto el numero de telefono en la pagina web, por lo tanto, ya hemos cambiado el archivo index.html

source: gharchive/pull-request

license: MIT

license_type: permissive

license_source: github-api


text:
🛑 Ofelia Nieto, 57 is down

In 2273126, Ofelia Nieto, 57 (http://159.65.204.200:7022/) was down:

HTTP code: 502
Response time: 18508 ms

Resolved: Ofelia Nieto, 57 is back up in 9be35e0 after 16 minutes.

source: gharchive/issue

repo: javisu/monitor


text:
🛑 Brescia, 4 is down

In cbcf60e, Brescia, 4 (http://159.65.204.200:7051/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Brescia, 4 is back up in 50e70a7.


text:
🛑 Joaquin Bau, 5 is down

In ea6854c, Joaquin Bau, 5 (http://159.65.204.200:7056/) was down:

HTTP code: 502
Response time: 18816 ms

Resolved: Joaquin Bau, 5 is back up in 14bee4b after 18 minutes.


text:
Namespace change, Base64 to Built In, Add URI Components

Updated Namespace to be less confusing,
Changed the Base64 Encode/Decode to use built in C# methods
Added URI Component Encode/Decode Methods.  This should solve https://github.com/jawa-the-hutt/lz-string-csharp/issues/9

See the new master branch... there seems to be some weird, incompatible behavior with lz-string so I brought back the custom implementation: https://github.com/pieroxy/lz-string/issues/85

authors: christianrondeau jawa-the-hutt

repo: jawa-the-hutt/lz-string-csharp

license: unlicense

license_source: bigquery


text:
🛑 NetSIP Website is down

In 4245324, NetSIP Website (https://www.netsip.com.au) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NetSIP Website is back up in 65226f9.

repo: jaybinks/test-uptime


text:
Unsound assumptions for static initializers

The current translation calls all static initializers once at the beginning of Main in an arbitrary order. Technically this is unsound because static initializers may assume a certain execution order that is enforced by the code. However, since this is terrible style and we haven't encountered it, I'm not going to work on that any time soon.
Technically, this should be easy to fix. We could use an inter-procedural graph like the one in soottocfg.cfg.util.InterProceduralPullPushOrdering to figure out where the first uses of a static member (field or method) of a class are, and place the static initializer call there. Note that there might be multiple locations in different branches.
Anyway, we should mention somewhere that we don't promise soundness for this case.

merge with #89

repo: jayhorn/jayhorn

license: mit


text:
🗑 Remove Free Download Manager

😳 Explain why it should be removed
Free Download Manager is a shady application. From Wikipedia:

It was found that the website freedownloadmanager.org was spreading Linux malware for over three years until 2022. Researchers discovered that the site was intermittently redirecting users to domains that served a malicious version of the Free Download Manager software. This malware included a script that installed a backdoor on Linux devices to steal passwords, browsing history, cryptocurrency wallet files, and cloud service credentials. The infection was uncovered in September 2023 though it had been active since 2020. It is believed to have been a supply chain attack impacting the legitimate Free Download Manager project. The malware went undetected for years due to the stealthy nature of Linux threats compared to Windows. The administrators of the site did not respond to notifications about the campaign.

📖 Additional context
No response

@maliayas thx!

authors: jaywcjlove maliayas

repo: jaywcjlove/awesome-mac


text:
Fix gcm mutating extra args

gcm._cm_send_request mutates its data argument by calling dict.pop for all items in FCM_NOTIFICATIONS_PAYLOAD_KEYS and then using the rest as payload["data"]. However, since this function may be called more than once from push_notifications.GCMDeviceQuerySet.send_message, with same dict as data argument, only the first call will have extra values in payload["notification"].
Suggested fix creates a copy of the argument before mutating it. A test case that reproduces the error if ran without the fix is also included.

You didn't need to open a new PR, the old one can be updated with a force push.

authors: iharthi jleclanche

repo: jazzband/django-push-notifications


text:
Add MaxMind database files to Git

Cache mmdb files in git to speed up CI tests
Description

Instead of constantly regenerating the MaxMind database fixtures in the GHA test workflow, just commit them and let pre-commit check if they need to be updated.
Generally speaking, it's not a great idea to commit binary files to Git, but I only expect these files to change very rarely (or never), and they are 2.7kB and 2.5kB, respectively. So I don't think this will be a big deal.
To double check that the MMDB files don't need to be updated, I added that as a pre-commit check. It uses make to avoid doing any work unless the Dockerfile or the Perl script have been touched.
It should be noted that even regenerating the mmdb files does change them, so reproducible builds aren't currently possible AFAIK.
Types of changes

[x] Code improvement

Checklist:

[x] All new and existing tests passed.

Can't CI just cache the files without them being in the repository?

Yes, but only for 7 days. And given how infrequently this repository is updated, that means the cached files will never exist, and always be regenerated, which isn't any better than what we do now.
But, since this repository is so infrequently updated, I guess this only provides minor value as well.
Closing, since I've switched over to using django-qsessions instead anyway.

authors: WhyNotHugo blag

repo: jazzband/django-user-sessions


text:
request.user.is_superuser and request.user.is_staff are False

My DRF settings are:
REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework_simplejwt.authentication.JWTStatelessUserAuthentication',
    ),
    ...
}

I have an admin user, if I view the information in the admin panel, the user is really superuser and staff, but if I look for the user's information in the request object, is_superuser and is_staff are False. I really need the superuser information taken from the request, cause I'm filtering data by user:
Django filter set:
class CustomFilterSet(filters.FilterSet):
    user = filters.CharFilter(field_name='user__username')

    class Meta:
        model = models.MyModel
        fields = '__all__'

    def __init__(self, data=None, queryset=None, *, request=None, prefix=None):
        super().__init__(data, queryset, request=request, prefix=prefix)
        user = self.request.user
        if user and not user.is_superuser:
            self.queryset = self.queryset.filter(user=user.id)

I'm using the version 5.3.1 of simplejwt.

The solution that I found, was getting the user's pk from request and then get the user from the User model:
user = User.objects.get(id=request.user.pk)

And with that user I can implement what I want.
But I don't know if that is efficient because I think that the library is getting the request.user info from database and then I consult to the db again.

JWTStatelessUserAuthentication returns a TokenUser instead of the actual User from the database.
You can customize the token claims to add is_superuser and is_staff, which will then be present on the TokenUser instance.

@confuzeus It worked! Thank you.

@confuzeus It worked! Thank you.

authors: confuzeus fegamon

repo: jazzband/djangorestframework-simplejwt


text:
Include the exact hash for VCS dependency.

Currently, pip-compile doesn't include the commit hash for a git repo -
git+https://github.com/devxpy/django-pb-model.git

Of course, when a specific hash is made explicit in setup.py, it is honoured by pip-compile as well -
git+https://github.com/devxpy/django-pb-model.git@18778f769317ab9fab690ea2e581c2de47f46cf6

legit use-case -- git dependency was updated, but build server doesn't mark cache invalid since  requirements.txt doesn't change.

Really sorry if this is a dupe.
Thank you very much for taking the time and effort to maintain this awesome tool. Love it!

Hello @devxpy,
Thanks for the issue! I’m not sure if I understand correctly, looks like it’s related to #161. Is it?

Looks like a duo to me, thanks.

authors: atugushev devxpy

repo: jazzband/pip-tools


text:
Clarification re: installation

The README suggests pip install pip-tools, but it's not clear what environment that should be run in. Some of the options that I see:

System Python (e.g., distributed with OS): generally not recommended
Third-party Python (e.g., Homebrew, python.org, pyenv, Anaconda)
Virtual environment dedicated to pip-tools
Each project's virtual environment

In my case, I chose option 3, using pipsi to streamline adding it to my PATH. I've installed other tools like fabric and cookiecutter in a similar manner, whereas I install things like flake8 using option 4.
I think option 1 or 2 would be safer with pip install --user.

Considering the pip-sync command, it needs to be installed in the same virtualenv that you want to sync, which is each project virtualenv, because pip-sync will simply perform packages install/uninstall in th current active environment.
That means option 4.
I don't know much about pipsi, but if tools installed with pipsi are available when in another virtualenv (like a given project's virtualenv), then it could work (or cause horrible unforeseen side-effect). If you want to give us you're feedback on how the pip-sync commands work in these condition, it could be good to know, and document if needed.
At the moment, I think that option 4 is the only fully valid option that will work with pip-tools as a whole (not only pip-compile). That should indeed be clarified in the doc.

I've been using pip-sync successfully with pipsi, which I think makes sense based on your description. But, I'm happy to update the docs to suggest option 4, as that seems the easiest and least surprising.
On that note: is there any suggestion for including pip-tools as a development requirement in setup.py or a .in file?

@bhrutledge It might not seem like it, but that's a pretty loaded question right there. It points back to the broader question "how do I deal with dev requirements in Python", and there's not a single viewpoint on this in the community.
Although, I'm not an expert on all the fancy options available in setup.py using setuptools, but I would be very careful about including pip-tools somewhere in a setup.py. I would deal with pip-tools the same way you deal with pip. If there was a "dev_requires" section in setup.py, is could be an idea, although it would need some testing to make sure everything goes smoothely.
Personally, I keep my dev packages in a separate dev_requirements.in/.txt. But in the end, it comes down to using a way that fits your need, as long as you're aware that this is part of your "python environment tooling", like pip is.

authors: bhrutledge vphilippon


text:
Error at reuse = true

I get this error when I tried to train.
bn1/moments/moments_1/mean/ExponentialMovingAverage/biased does not exist, or was not created with tf.get_variable(). Did you mean to set reuse=None in VarScope?
It happens at
adversarial_neg = model.build_adversarial(reconstruction, is_train, reuse=True)
I am new to tensorflow, have been using caffe so far - so not sure how to fix the error. I use the tensor flow docker to run it.
Thanks.

I met the same error with tensorflow 0.12. And when I tried to use tensorflow 0.11, the problem was solved. Good luck.

Yes the error I guess is because in new tensor flow, by default, if reuse=True is specified, it will show error for variables that haven't been create in this case some parameters for batch normalization.  I simply removed batch normalization for adversarial network to work with new version.

Thanks, it works with 0.12 after removing batch normalization for adversarial network. Is there any different results if we remove (and not remove) batch normalization ?

@sankar19 Hi ,I met same problem when I tried to use tensorflow 1.0.1. Can you tell me how do you remove batch normalization for adversarial? Is it convenient for you to share your codes? Thank you very much!

( self.batchnorm(conv1, is_train, name='bn1') --> conv1 ) in the adversarial code.

OK，thank you very much ,so that your model based on this code has been trained?Is it a model that only contain L2 loss? @sankar19

By the way, I met this error when I run the code.
Traceback (most recent call last):
File "/home/hhw/PycharmProjects/untitled/train.imagenet.py", line 98, in
grads_vars_G = map(lambda gv: [tf.clip_by_value(gv[0], -10., 10.), gv[1]], grads_vars_G)
File "/home/hhw/PycharmProjects/untitled/train.imagenet.py", line 98, in
grads_vars_G = map(lambda gv: [tf.clip_by_value(gv[0], -10., 10.), gv[1]], grads_vars_G)
File "/home/hhw/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/clip_ops.py", line 53, in clip_by_value
t = ops.convert_to_tensor(t, name="t")
File "/home/hhw/anaconda2/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 620, in convert_to_tensor
ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
File "/home/hhw/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/constant_op.py", line 179, in _constant_tensor_conversion_function
return constant(v, dtype=dtype, name=name)
File "/home/hhw/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/constant_op.py", line 162, in constant
tensor_util.make_tensor_proto(value, dtype=dtype, shape=shape))
File "/home/hhw/anaconda2/lib/python2.7/site-packages/tensorflow/python/framework/tensor_util.py", line 346, in make_tensor_proto
raise ValueError("None values not supported.")
ValueError: None values not supported.
Python version:2.7.12   Tensorflow version:0.9.0
Is it a problem about tensorflow version?

@hhwhbf See this other issue : #6
@sankar19 you can go around that error by assigning False to reuse in an inner loop :
with tf.variable_scope(tf.get_variable_scope(), reuse=False):                 ema_apply_op = ema.apply([batch_mean, batch_var])

@Sora77 Excuse me,I have taken your suggestion in issue:#6,but there is still an error like this:
  File "C:/Users/Administrator/PycharmProjects/untitled1/train.imagenet.py", line 105, in <module>
    train_op_G = optimizer_G.apply_gradients( grads_vars_G )
  File "C:\Users\Administrator\Anaconda3\lib\site-packages\tensorflow\python\training\optimizer.py", line 380, in apply_gradients
    raise ValueError("No variables provided.")
ValueError: No variables provided.

I use python3.5 and tensorflow 1.0.1.
Therefore,I guess that there is a difference between python3.5 and python2.7 which cause this error.
I am so glad if you can help to solve this problem,thank you.

Hi, your error is in fact due to that difference. The fact is that the map() function yielding grads_vars_G returns a generator and not a list. So you just have to wrap it into a list () to cast a list out of it.
I hope it resolves your issue.

@Sora77 Yes,I have noticed that difference.So,I have changed my code.
 optimizer_G = tf.train.AdamOptimizer( learning_rate=learning_rate )
grads_vars_G = optimizer_G.compute_gradients( loss_G, var_list=var_G )
grads_vars_G = list(map(lambda gv: gv if gv[0] is None else [tf.clip_by_value(gv[0], -10., 10.), gv[1]],           grads_vars_G))
train_op_G = optimizer_G.apply_gradients( grads_vars_G )

It is strange that there still an error above.Latter,I have found that not only map() function need wrap list() but also filter() function need.
var_G = list(filter( lambda x: x.name.startswith('GEN'), tf.trainable_variables()))
var_D = list(filter( lambda x: x.name.startswith('DIS'), tf.trainable_variables()))

W_G = list(filter(lambda x: x.name.endswith('W:0'), var_G))
W_D = list(filter(lambda x: x.name.endswith('W:0'), var_D))

Now the problem have been solved,thank you very much.

repo: jazzsaxmafia/Inpainting


text:
Add option to limit to notes since given date

This adds an option to nostril-query to allow limiting to notes made after a certain date, using the since filter as defined in NIP 01.  I tested by passing a Unix timestamp and verified it built the query correctly, and also passed that query to a relay, and it returned the correct results (omitting older notes).

I somehow missed this, thanks!


text:
Doesn't show up in my e-mails

Hello,

LineageOS 15.1
Asus Zenfone Max pro M1
SMS Backup+ 1.5.11
Silence

I have my own server at home.
My set up in the app:
imap.xxxx.xxxx.org:993
xxxx@xxxx.org
my imap passwd
TLS
(I also tried with and without 'Trust all certificates', I have a Let's encrypt certificate)
The app says the backup is successful but nothing shows up in my e-mails on my server.
Thank you for any suggestions.

Have you checked for an SMS folder on your mail server?
if you want SMSes to appear as newly-arrived Email messages, under "Backup settings":

set "Gmail label/IMAP folder" to INBOX
set "Mark as read (emails)" to "Always mark as unread".

Closing; please re-open ticket #960 if you need further assistance.

Hello, having been notified you closed this ticket, I gave sms-backup+ another try and this time it was successfull, thank you for this app. I opened a new ticket, #1000 , regarding the sms app Silence which seems not to work well with sms-backup+.

authors: arnauldb kurahaupo

repo: jberkel/sms-backup-plus


text:
Integration tests: Parallelism and EF migrations

I noticed some things regarding the integration tests.
As far as I can see the tests run in parallel.
Is that by purpose?
Solutions: Using Collection Attribute or [assembly: CollectionBehavior(DisableTestParallelization = true)]
I could not find anything about migrating the database by using EF migrations?
Do you run them once before executing the tests? In a build script that would be fine, but running tests within VS would be a bit of a pain to migrate the db manually before executing tests.

Yeah I wanted to enable it. And I don't use EF migrations, each tests' data is independent. I use though Respawn to wipe the database before the full run.

authors: Rookian jbogard


text:
Use root context (/) for the WARs

Using root context is more user-friendly as users don't need to know the
specific context the app was deployed to.
@errantepiphany WDYT? Is this a good idea? Are there any disadvantages to this approach?

I actually think this is a great idea. However, we'll have to tweak the openshift derivative images also to remove its use of the context in the url path.

@errantepiphany good point, thanks. I will take a look at the openshift images as well.

This PR has been covered by work in https://issues.jboss.org/browse/CLOUD-1844 and thus can be closed.

authors: errantepiphany psiroky


text:
Lock in versions of dependencies that are being duplicated

Lock in versions of dependencies that are being duplicated

please retest

repo: jboss-fuse/camel-spring-boot


text:
🛑 https://jbowdre.lol is down

In 67547ee, https://jbowdre.lol (https://jbowdre.lol) was down:

HTTP code: 502
Response time: 15264 ms

Resolved: https://jbowdre.lol is back up in 4086e45 after 8 minutes.

repo: jbowdre/upptime


text:
🛑 https://jbowdre.lol is down

In baf05e5, https://jbowdre.lol (https://jbowdre.lol) was down:

HTTP code: 0
Response time: 0 ms

Resolved: https://jbowdre.lol is back up in 3888fab after 16 minutes.


text:
Add Japanese translation

Hello.
Thanks for making this great plugin.
I have made a Japanese translation for this plugin.
If there's no problem, please accept this pull request.
Thank you.

Thank you!

authors: guenbakku n-rodriguez


text:
🛑 Robert Turner is down

In d053365, Robert Turner (https://www.robertturner.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Robert Turner is back up in d1473b9.

repo: jbraithwaite/uptime


text:
Ability to change Texture Format

Due to https://github.com/bevyengine/bevy/blob/main/crates/bevy_render/src/view/window/mod.rs#L245 the default TextureFormat might be different from Bgra8UnormSrgb

Thanks for your contribution! I think removing the hard-coded texture format here is definitely worthwhile. I wonder though, whether it would be better to try to obtain the texture format automatically from the extracted primary window's swap_chain_texture_format rather than requiring the user to specify this themselves via the plug-in configuration?

ExtractedWindows is not yet populated at the point of imgui plugin initialisation (where the texture format is currently being set). Might be possible to extract it from somewhere else but i am not that familiar with bevy's window/rendering workflows to figure it out on my own.

Okay. Just to provide an update here, I'm going to take a look at alternative options before merging this. I feel that pushing this up into the config structure just passes this problem on to the user, but in doing so, we'll then be asking them for something that they also cannot compute. I'll see if I can restructure the plug-in a bit to allow us to obtain this information before initialising the imgui renderer

Hey @Nhlest - I've pushed up an alternative PR for automatically handling texture formats - do you think this solution would address your issues too?

authors: Nhlest jbrd


text:
Export SSL cert

I am needing to export an ssl cert I have for a certain site I am using the reverse proxy for, it needs a file path to the cert.
Is there an easy way to export these certs generated by lets's encrypt from the proxy manager?

the certs that are being used should be under /etc/letsencrypt/live into the nginx proxy manager container.
you should be able to use docker cp to copy the files like that:
docker cp :/etc/letsencrypt/live ./live


text:
🛑 audience is down

In e0f21af, audience (https://www.audience-soest.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: audience is back up in 54f7c8d.

repo: jcruse-erw/UptimeReport


text:
Pin Monitor 100% CPU

The TIOCMIWAIT ioctl returns EINVAL on some drivers/hardware. This results in 100% CPU usage for the thread as instead of blocking the function call immediately returns.
Perhaps it would be better to just introduce a delay (sleep) in cases like this since you can't wait on pin changes on this hardware.

Thanks for the bug report! I'd also like to document this in the wiki. What hardware specifically do you have that shows this behaviour?

It'd the g_serial driver for a USB virtual sserialport (/dev/ttyACM0) interfacing with a TI CC2531.

Investigated the issue. The proper solution is to propogate the error to UnixNativeSerial class which will abort all pin monitoring operations. So instead of polling in case of this error, I just stop. I assume that if it doesn't work once, it will stop working. I don't expect that the ioctl() should return an error otherwise (except for EAGAIN or EWOULDBLOCK, in which case we'd try again immediately).

I think that it's a fair bet for EINVAL, perhaps restrict it to just that error code for now (unless a case of a different code comes up).
For our information if this functionality is (Pin Monitoring) is disabled, what effect does it have on functionality? Might be good to document too.

I'll continue the loop for only EAGAIN or EWOULDBLOCK as a signal may occur at any time. All others I'll treat as fatal. When the monitoring thread stops, a user will no longer get notification of pin state changes CTS, DTR, DCD and RI.
I had an old phone that also provided a /dev/ttyACM0 interface, unfortunately, I can't test with that (the ioctl works). I've tested by changing code in such a way that the error occurs and I get the result I expect (no 100% CPU, the thread stops and the program continues as expected).

Could I make a suggestion?
A better failure mode for devices that don't support waiting (and those who fail at it) would be to update pin changes using a thread with a fixed wait time (i.e 10ms) IMHO.
We don't use that functionality currently, so it's not an issue for us. Just saying.

And I'm happy to test any changes you make on Monday on the hardware, no issue.

I've made a first draft in github with the branch "bugfix/modem". There are a few other fixes present when I reviewed the code. I'll look over your suggestion and see what I can do.

Hu, wondering if you had the chance to test before I merge to the main branch.

Sorry I haven't my hardware got feature frozen for a demos.
Unfortunately that's the only one I have built at the moment. Another one will be getting built very soon, probably early next week,

Would you be able to review the code? I'd like to be ready to merge on the weekend. Thanks for your help.

looks fine to me

Just did a review of my own after a few days. I've found a few bugs, so I'll have to clean them up first.

Bugs fixed and now pushed to v2.x

@jcurl I tested your newest version today. The issue is back.
strace shows:
[pid  2142] ioctl(3, TIOCMIWAIT, 0x1e0) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCGICOUNT, 0xb3afedd4) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMIWAIT, 0x1e0) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCGICOUNT, 0xb3afedd4) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMIWAIT, 0x1e0) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCGICOUNT, 0xb3afedd4) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMIWAIT, 0x1e0) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCGICOUNT, 0xb3afedd4) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMIWAIT, 0x1e0) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCGICOUNT, 0xb3afedd4) = -1 EINVAL (Invalid argument)
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0
[pid  2142] ioctl(3, TIOCMGET^C, [TIOCM_DTR|TIOCM_RTS|TIOCM_CTS]) = 0

The problem appears to be that the pthread continues to get recreated after a failure.

Just a sanity question, did you update and use the newer libnserial package? Did you compile from source or install the debian package?

yes using the latest libnserial compiled from git, and the latest .net side from NuGet.
I forgot to mention that that strace is above is grep'ed with ioctl.
I did some debugging and found that although the pthread is exited on failure, it gets restarted when requested again.

hi, i have the same problem in raspberry pi 3 b+

i found that,i am use 2.1.2 version the cpu not 100% and the 2.1.4 when i use it (serialportstream object singleton) read while 7 or 8 hours my raspberry cpu will cpu 100% all time.and that 2.1.2 will not

I'm open for patches to review if you can provide a generic solution without regressions for standard hardware.

i have catch crash info
double free or corruption (fasttop): 0x5c011c18 ***

i found that 2.1.2 always will let cpu 100%

authors: jcurl pigwing splitice

repo: jcurl/SerialPortStream

license: MS-PL


text:
Fix dns_forced_in_dhclientconf for both Debian and Redhat system

Made changes to modify dhclient.conf in Debian-based and Redhat-based distributions.
Tested on Debian 6, CentOS 7 and Fedora 20.
Please, review. :)

Thanks

authors: jdauphant tuladhar

repo: jdauphant/ansible-role-dns


text:
_posts/0000-01-02-jdechow5.md

A simple edit to the main branch

Going to start a new pull request


text:
Inconsistent pupil colors

Unlike the rest of the emojis, emojis with wide eyes has black pupils instead of brown.
The rolling eyes emoji and the old versions of pleading/holding back tears emoji are an exception in that they have brown pupils.

the difference with the pleading and holding back tears emojis here is that they have much larger pupils and also have irises. changing those large pupils to black (as was done in #6) makes them look very out-of-place, and my guess is that some of that has to do with that size difference. having two large black dots in the middle of the emoji like that just looks very weird. as stated in my comment on #27, I think that there's nothing wrong with the original pleading emoji and that it shouldn't've been changed. I think that the primary issue with the holding back tears emoji is not the pupils and irises, but the shape of the sclera (the white part of the eye) and the location of the iris and pupil within it.
ultimately, I think that the pleading face and holding back tears emojis should be left out of this discussion about pupil color because they're not very comparable to the other 5 emoji. I think making the rest of the 5 consistent (either as black or as brown) is a worthwhile question, though

I personally think they should be brown as to be more inline with the rest of the emojis

On the new pleading/holding back tears emojis, they now have large black pupils. which makes them now part of the other 4 emojis to have black eyes.

I don't have much of an opinion on the changes, but I do take issue with adding inconsistency where there was once wasn't.

authors: barkloaf winterClover

repo: jdecked/twemoji


text:
🛑 Home Assistant - DS918P is down

In e98300e, Home Assistant - DS918P (https://home.jdh1.duckdns.org/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Home Assistant - DS918P is back up in f8202d8.


text:
🛑 Home Assistant - DS918P is down

In 02053cc, Home Assistant - DS918P (https://home.jdh1.duckdns.org/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Home Assistant - DS918P is back up in 0efb569 after 9 minutes.


text:
[Low] Extra elements in the page objects container

JDN v 3.1.130
Back-end v 2022-02-12-11.36.19
Chrome

open any webpage
open JDN tab

AR:

ER: no such elements

JDN v 3.1.132
Back-end v 2022-02-12-11.36.19
Chrome
is not actual anymore. closed.

repo: jdi-testing/jdn-ai


text:
update headings for modals

убирал из модальных окон все формы Are you sure/Do you want/Do you wish
figma link 1
figma link 2

@arslanbekova второй вариант сейчас выглядит вот так

но надо его поправить до варианта как на

воспроизводится если поставить чекбокс и попытаться сохранить локатор, который недогенерировался

@arslanbekova модалки первого варианта сейчас такие

приводим к

воспроизводится если сгенерировать PO и нажать Back


text:
Add Z-Library

Backstory
Z-Library is considered as one of the largest e-book shadow library.
There are many fake sites appearing as z-lib but what I've mentioned are the official ones. (Source: Wikipedia, Mastodon)
The account deletion page goes like this https://domain/profileEdit#tabRemove. Due to multiple seizures & ever changing domains I think better to add them as notes.
Data

name: Z-Library
url:
url_CODE:
difficulty: medium
notes: Click on top-right-cornor menu > Edit Profile > Remove Profile > Remove my account. Enter Captcha to remove account permanently. Note that you'll unable to create a new account associated with this emailID.
email:
email_subject:
email_body:
domains: singlelogin.re, z-library.se, loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion, zlib24th6ptyb4ibzn3tj2cndqafs6rhm4ed4gruxztaaco35lka.b32.i2p

Thanks for your contribution!

repo: jdm-contrib/jdm


text:
Please don't indent JOIN-s

JOIN clauses are at the same hierarchy level as FROM clause, which is correctly not indented.
F.e. better formatting for
...
FROM
  {shop} AS s
  LEFT JOIN {shop_price} AS pr ON pr.good_id = s.id
  AND pr.trash = '0'
  AND pr.date_start <= 1469606657
  AND (
    pr.date_start = 0
    OR pr.date_finish >= 1469606657
  )
  AND pr.currency_id = 0
  AND pr.role_id = 0
  AND (pr.person = '0')
  INNER JOIN {shop_param_element} AS pe3 ON pe3.element_id = s.id
  AND pe3.param_id = '%d'
  AND pe3.trash = '0'
...

.. would be
...
FROM
  {shop} AS s
LEFT JOIN {shop_price} AS pr ON pr.good_id = s.id
  AND pr.trash = '0'
  AND pr.date_start <= 1469606657
  AND (
    pr.date_start = 0
    OR pr.date_finish >= 1469606657
  )
  AND pr.currency_id = 0
  AND pr.role_id = 0
  AND (pr.person = '0')
INNER JOIN {shop_param_element} AS pe3 ON pe3.element_id = s.id
  AND pe3.param_id = '%d'
  AND pe3.trash = '0'
...

technically, this is not true. Joins are a subpart of the FROM clause in SQL.
The indentation of AND in ON clauses is not good though

authors: arcadeus stof

repo: jdorn/sql-formatter


text:
First paragraph of docs

Hi this is at the top of the docs:
{{{
The Photologue documentation is being transferred from a Google Code wiki to a Sphinx-generated setup (if you’re reading this at readthedocs.org, then you’re looking at these docs).
This documentation is accurate and up-to-date (hopefully!); the old docs on the Google Code wiki are extensive but have not been updated in a long time.
}}}
I guess you (the developers) never look at the docs, but new comers do.
Is this warning still useful today?

No, it's out of date :-)
I will remove it from the docs - thanks for the heads-up.

authors: guettli richardbarran

repo: jdriscoll/django-photologue


text:
Caching issues with less imports

First of all, thanks for creating Styless, it's awesome.
I think I'm having a caching issue. I import variables from a .less file according to @jean343's stackoverflow-post. He also mentions to

Do not forget to delete the .cache folder for the effects to take place.

But I'm not sure which .cache folder is meant, as there is no such folder in my project root or node_modules folder.
This could be the issue that the variables declared before first loading them via babel are working, and the new ones are not.

I found a solution: As I'm using NextJS babel doesn't use the default node_modules/.cache folder but rather a custom NextJS directory. The cache can be disabled as explained here.

Thank you @Kombustor, I appreciate your feedback.
I did mention .cache as it was the default cache location for Parcel, it will differ to different locations as you correctly pointed out.


text:
minor fix to SLES template

Shutdown command needs to be absolute (no /sbin in path) and -h option required to halt system

too hasty, will try again...


text:
加载页面会报错导致卡住

版本号：
3.7.0
问题描述：
usePage.ts:34  ReferenceError: Cannot access 'ScrollContainer' before initialization
at IconList.vue:52:7
截图&代码：

前端安装环境：

如果你是启动报错，请说明你的前端环境

采用的是pnpm安装还是yarn?
node版本号：？
pnpm版本号：？

友情提示（为了提高issue处理效率）：

未按格式要求发帖，会被直接删掉;
请自己初判问题描述是否清楚，是否方便我们调查处理；
描述过于简单或模糊，导致无法处理的，会被直接删掉；

具体那个页面

问题出现在菜单切换的时候，出现问题之后任意点别的菜单都会卡住报错

测试无问题

repo: jeecgboot/JeecgBoot


text:
2.4.6积木报表问题

版本号：2.4.6
问题描述：
积木报表---->添加api数据集时，Api地址http://localhost:8080/jeecg-boot/online/cgform/api/data/{tableName}/queryById?id='${id}'&token='${token}'，替换了tableName,填写了报表参数，点击api解析，后台报错
截图&代码：

是我哪里做错了吗？我是按照https://www.bilibili.com/video/BV1Y541147m1?p=1视频做的
友情提示（为了提高issue处理效率）：

未按格式要求发帖，会被直接删掉;
请自己初判问题描述是否清楚，是否方便我们调查处理；
针对问题请说明是Online在线功能(需说明用的主题模板)，还是生成的代码功能；
描述过于简单或模糊，导致无法处理的，会被直接删掉；

经测试，没有问题，请尝试使用jimu最新依赖，还有问题需提供更详细的说明

repo: jeecgboot/jeecg-boot


text:
实体类添加@Version版本标识不生效

版本号：3.5.3
前端版本：vue3版
问题描述：实体类添加@Version版本标识不生效
截图&代码：

友情提示（为了提高issue处理效率）：

未按格式要求发帖，会被直接删掉;
描述过于简单或模糊，导致无法处理的，会被直接删掉；
请自己初判问题描述是否清楚，是否方便我们调查处理；
针对问题请说明是Online在线功能(需说明用的主题模板)，还是生成的代码功能；

不清楚，我们用的没问题

https://baomidou.com/pages/0d93c0/#_1-配置插件


text:
[BUG] Animations are rendered slower than they should on Windows

Description
I've been trying to make a presentation but when playing the animations they run slower.
I've run manim-slides A_introNumeros  -v PERF but the debug information does not tell me anything.
My specs:
Nombre del dispositivo	DESKTOP-G7U6IGR
Procesador	12th Gen Intel(R) Core(TM) i7-12700   2.10 GHz
RAM instalada	16,0 GB (15,7 GB usable)
Identificador de dispositivo	24CC63B1-B59B-490E-AD3D-C4D5D1EEA87B
Id. del producto	00325-80000-00000-AAOEM
Tipo de sistema	Sistema operativo de 64 bits, procesador basado en x64
This seems similar to https://github.com/jeertmans/manim-slides/issues/179 but I'm not sure.
Version
4.16.0
Platform
Windows
Screenshots

Additional information
No response

Hello! Thank you for creating this issue!
It is quite hard to really quantify what is « slow ».
I have a few questions:

are the transitions slow, or is each animation slow?
can you play one of the animations with a media player (just open the video file) and check that it plays as expected?
can you give me some code so I can test myself? I don’t have the same computer, but I can still test on Windows

Here you can see it, it's easier to see it an the start when adding new rotating numbers.
https://github.com/jeertmans/manim-slides/assets/101596307/48c917bd-5b75-4eb5-9b32-85d48e72484b
The code of the animation:
from manim import *
import numpy as np
from animaciones.idleAnimation import IdleAnimation
from Objetos.CircunferenciaGoniometrica import CircunferenciaGoniometrica,ProyeccionCubo
from manim_slides import Slide

class introNumeros(Slide):

    def construct(self):

        self.wait(1)
        self.next_slide()

        COLORES=[BLUE_C,RED,PINK,GREEN,PURPLE,BLUE_D,YELLOW,TEAL,MAROON,LIGHT_PINK]

# Circulo de Numeros
        numeros=[]
        for i in range(0,10):
            numeros.append(MathTex(str(i),color=COLORES[i%10]))

        for i in range(1,10):
            numeros[i].move_to(2*UP*(np.sin((2*PI/(8))*(i-1)))+2*RIGHT*(np.cos((i-1)*(2*PI/8))))

        grupo=VGroup()
        for i in range(0,10):
            grupo.add(numeros[i])

        an=[]
        for i in range(0,10):
            an.append(IdleAnimation(grupo[i],run_time=1,lag_ratio=i/10,rate_function=rate_functions.linear))

        c=Circle(2)
        self.play(Write(numeros[0]))
        for i in range(1,10):
            self.wait(5/9)
            self.add(numeros[i])
            turn_animation_into_updater(
                MoveAlongPath(
                    numeros[i],
                    c,
                    rate_func=linear,
                    run_time=5,
                ),
                cycle=True
            )
        self.wait(1/9)

        for i in range(9,0,-1):
            numeros[i].clear_updaters()
        self.wait()

        self.next_slide()

#Operaciones Básicas
        suma=VGroup(
            MathTex("7",color=COLORES[7]),
            MathTex("+",color=BLUE),
            MathTex("9",color=COLORES[9]),
            MathTex("="),
            MathTex("16",color=BLUE)
        ).arrange(RIGHT).move_to(UP*3+LEFT*5)
        self.play(
            ReplacementTransform(numeros[7].copy(),suma[0]),
            ReplacementTransform(numeros[9].copy(),suma[2]),
            ReplacementTransform(VGroup(numeros[1],numeros[6]).copy(),suma[4]),
            Write(VGroup(suma[1],suma[3]),lag_ratio=0.2)
        )
        self.wait(0)

        self.next_slide()

        resta=VGroup(
            MathTex("21",color=GREEN),
            MathTex("-",color=RED),
            MathTex("8",color=COLORES[8]),
            MathTex("="),
            MathTex("13",color=RED)
        ).arrange(RIGHT).move_to(UP*3+RIGHT*5)

        self.play(
            ReplacementTransform(VGroup(numeros[2],numeros[1]).copy(),resta[0]),
            ReplacementTransform(numeros[8].copy(),resta[2]),
            ReplacementTransform(VGroup(numeros[1],numeros[3]).copy(),resta[4]),
            Write(VGroup(resta[1],resta[3]))
        )
        self.wait(0)

        self.next_slide()

        multiplicacion=VGroup(
            MathTex('3',color=COLORES[3]),
            MathTex(r'\cdot',color=YELLOW),
            MathTex('5',color=COLORES[5]),
            MathTex("="),
            MathTex("15",color=YELLOW)
        ).arrange(RIGHT).move_to(DOWN*3+LEFT*5)
        self.play(
            ReplacementTransform(VGroup(numeros[3]).copy(),multiplicacion[0]),
            ReplacementTransform(numeros[5].copy(),multiplicacion[2]),
            ReplacementTransform(VGroup(numeros[1],numeros[5]).copy(),multiplicacion[4]),
            Write(VGroup(multiplicacion[1],multiplicacion[3]))
        )
        self.wait(0)

        self.next_slide()

        division=VGroup(
            MathTex('10',color=COLORES[3]),
            MathTex(r'\slash',color=YELLOW),
            MathTex('2',color=COLORES[5]),
            MathTex("="),
            MathTex("5",color=GREEN)
        ).arrange(RIGHT).move_to(DOWN*3+RIGHT*5)
        self.play(
            ReplacementTransform(VGroup(numeros[1],numeros[0]).copy(),division[0]),
            ReplacementTransform(numeros[5].copy(),division[2]),
            ReplacementTransform(VGroup(numeros[2]).copy(),division[4]),
            Write(VGroup(division[1],division[3]))
        )
        self.wait()

#Raices
        self.next_slide()

        plantilla=TexTemplate()
        plantilla.add_to_preamble("\\usepackage{cancel}")
        potencia=VGroup(MathTex("2",color=COLORES[2]),
                        MathTex("2","^","{2}",color=COLORES[2]),
                        MathTex("\\sqrt{","2","^","{2}","}",tex_template=plantilla,color=COLORES[2]),
                        ).shift(LEFT*5+UP*1.25).scale(1.5)
        self.play(ReplacementTransform(numeros[2].copy(),potencia[0]))
        self.play(TransformMatchingTex(potencia[0],potencia[1]))
        self.wait(1)
        self.play(TransformMatchingTex(potencia[1],potencia[2]))

#Cubo
        self.next_slide()
        pc=ProyeccionCubo(1,fill_color=BLUE,fill_opacity=0.5).move_to(LEFT*5+DOWN*1.25)
        self.play(Create(pc))
        self.wait(1)

#Circunferencia Goniometrica

        self.next_slide()

        c=CircunferenciaGoniometrica().shift(RIGHT*5+1.25*UP)
        self.play(Create(c))
        self.play(c.animarCambioAngulo(2*PI+PI/4))

#Funciones

        self.next_slide()

        ejes=Axes(
            [-2*PI-0.5,2*PI+0.5],
            [-2,2],2,2,tips=False
                ).move_to(RIGHT*5+DOWN*1.25)
        graf=ejes.plot(lambda x: np.sin(x),color=BLUE,x_range=[-2*PI,2*PI])
        self.play(Succession(Create(ejes),Create(graf),lag_ratio=0.5))
        self.wait()
        self.next_slide()
        self.play(FadeOut(VGroup(graf,ejes,c,potencia[2],pc,suma,resta,multiplicacion,division),run_time=4))

        self.next_slide()
        self.play(FadeOut(grupo),run_time=5)

        self.pause()

And the two other files required:
CircunferenciaGoniometrica
from manim import *
from numpy import cos,sin

class CircunferenciaGoniometrica(VMobject):
    def __init__(self,radio=1, alfa_inicial=PI/4,
        colores = {"circunferencia": WHITE,"seno": BLUE, "coseno": RED, "radio" :WHITE, "diametros": WHITE},
        longitud_trazos=0.2,
        **kwargs):
        super().__init__()
        self.colores=colores
        self.alfa = alfa_inicial
        self.circulo = Circle(radio,colores["circunferencia"]).set_z_index(-2)
        self.diametro_horizontal = DashedLine(self.circulo.get_left(),self.circulo.get_right(),dash_length=longitud_trazos,color=colores["diametros"]).set_z_index(-2)
        self.diametro_vertical = DashedLine(self.circulo.get_top(),self.circulo.get_bottom(),dash_length=longitud_trazos,color=colores["diametros"]).set_z_index(-2)
        self.radio= Line(self.circulo.get_center(),self.circulo.get_center()+self.circulo.radius*(RIGHT*cos(self.alfa)+UP*sin(self.alfa)),
            color=colores["radio"]).set_z_index(-2)
        self.coseno= Line(self.circulo.get_center(),self.circulo.get_center()+self.circulo.radius*(RIGHT*cos(self.alfa)),
                    color=colores["coseno"]
        )
        self.seno= Line(self.circulo.get_center()+RIGHT*self.circulo.radius*cos(self.alfa),self.circulo.get_center()+self.circulo.radius*(RIGHT*cos(self.alfa)+UP*sin(self.alfa)),
                    color=colores["seno"]
        )
        self.texto_seno=MathTex("\\sin(\\alpha)",color=colores["seno"],stroke_width=radio).move_to(self.seno.get_right()+RIGHT*0.1+RIGHT*0.75*radio/3).scale(radio/3)
        self.texto_coseno=MathTex("\\cos(\\alpha)",color=colores["coseno"],stroke_width=radio).move_to(self.coseno.get_bottom()+DOWN*0.5*radio/3).scale(radio/3)

        self.rectangulo_seno=BackgroundRectangle(self.texto_seno,BLACK,fill_opacity=0.75).set_z_index(-1)
        self.rectangulo_coseno=BackgroundRectangle(self.texto_coseno,BLACK,fill_opacity=0.75).set_z_index(-1)
        self.angulo= Angle(self.diametro_horizontal,self.radio)

        self.add(self.circulo,self.diametro_horizontal,self.diametro_vertical,
                 self.radio,self.seno,self.coseno,
                 self.texto_seno,self.texto_coseno, self.rectangulo_coseno,self.rectangulo_seno,
                 self.angulo)

    def cambiarAngulo(self,nuevo_alfa):
        antiguo_alfa=self.alfa
        self.alfa=nuevo_alfa
        mob=self
        x=nuevo_alfa
        mob.radio.become(Line(mob.circulo.get_center(),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)+UP*sin(x)),
            color=mob.colores["radio"]).set_z_index(-2))
        mob.coseno.become(
            Line(mob.circulo.get_center(),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)),
            color=mob.colores["coseno"]
            )
        )
        mob.seno.become(
            Line(mob.circulo.get_center()+RIGHT*mob.circulo.radius*cos(x),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)+UP*sin(x)),
                color=mob.colores["seno"]
                )
        )
        mob.texto_seno.move_to(mob.seno.get_right()+RIGHT*0.75)
        mob.texto_coseno.move_to(mob.coseno.get_bottom()+DOWN*0.5)
        mob.rectangulo_coseno.move_to(self.texto_coseno.get_center())
        mob.rectangulo_seno.move_to(self.texto_seno.get_center() )
        mob.angulo.become(Angle(self.radio_base,self.radio))

    def animarCambioAngulo(self,nuevo_alfa):
        antiguo_alfa=self.alfa
        self.alfa=2*PI*(nuevo_alfa-int(nuevo_alfa))
        def rotar(mob,t):
            x=antiguo_alfa*(1-t)+nuevo_alfa*(t)
            mob.radio.become(Line(mob.circulo.get_center(),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)+UP*sin(x)),
                color=mob.colores["radio"]).set_z_index(-2))
            mob.coseno.become(
                Line(mob.circulo.get_center(),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)),
                color=mob.colores["coseno"]
                )
            )
            mob.seno.become(
                Line(mob.circulo.get_center()+RIGHT*mob.circulo.radius*cos(x),mob.circulo.get_center()+mob.circulo.radius*(RIGHT*cos(x)+UP*sin(x)),
                    color=mob.colores["seno"]
                    )
            )
            mob.texto_seno.move_to(mob.seno.get_right()+RIGHT*0.75)
            mob.texto_coseno.move_to(mob.coseno.get_bottom()+DOWN*0.5)
            mob.rectangulo_coseno.move_to(self.texto_coseno.get_center())
            mob.rectangulo_seno.move_to(self.texto_seno.get_center() )
            mob.angulo.become(Angle(self.diametro_horizontal,self.radio))

        return  UpdateFromAlphaFunc(self,rotar)

class ProyeccionCubo(VMobject):
    def __init__(self,lado = 1,dash_length=-1,**kwargs):
        super().__init__(**kwargs)
        if(dash_length<0):
            self.dash_length=lado/10
        self.borde=Polygon([0,0,0],[lado,0,0],[lado*1.3,lado*0.3,0],[lado*1.3,lado*1.3,0],[lado*0.3,lado*1.3,0],[0,lado*1,0],
                            color=self.color,fill_color=self.fill_color,fill_opacity=self.fill_opacity)
        self.aristasExteriores=VGroup(
                                    Line([lado,0,0],[lado,lado,0],color=self.color),
                                    Line([0,lado,0],[lado,lado,0],color=self.color),
                                    Line([lado*1.3,lado*1.3,0],[lado,lado,0],color=self.color)
                                    )
        self.aristasInteriores=VGroup(
                                    DashedLine([0,0,0],[lado*0.3,lado*0.3,0],color=self.color,dash_length=self.dash_length),
                                    DashedLine([lado*0.3,lado*0.3,0],[lado*0.3,lado*1.3,0],color=self.color,dash_length=self.dash_length),
                                    DashedLine([lado*0.3,lado*0.3,0],[1.3*lado,0.3*lado,0],color=self.color,dash_length=self.dash_length),
        )

        self.add(self.borde,self.aristasExteriores,self.aristasInteriores)
        self.move_to([0,0,0])

class Prueba(Scene):
    def construct(self):
        pc=ProyeccionCubo(3,color=WHITE,fill_color=BLUE,fill_opacity=0.5)
        self.add(pc)
        #self.add(Cube(color=WHITE,fill_color=BLUE).rotate(0.3,UP,[0.5,0,1]))

And IdleAnimation
from manim import *
from numpy import cos,abs,sin
class IdleAnimation(Animation):
    def __init__(self,mobject,maxDistanceCenter=0.02,**kwargs):
        super().__init__(mobject,**kwargs)
        self.maxDistanceCenter=maxDistanceCenter
        self.center=mobject.get_center()
        self.upDot=self.mobject.get_center()+UP*self.maxDistanceCenter
        self.downDot=self.mobject.get_center()+DOWN*self.maxDistanceCenter

    def interpolate_mobject(self,alpha):
        alpha=self.rate_func(alpha)
        upDot=self.upDot
        downDot=self.downDot
        if alpha<=0.25:
            beta=(alpha/0.25)
            nuevoPunto=(1-beta)*self.center+(beta)*upDot
        elif alpha <=0.5:
            beta=((alpha-0.25)/0.25)
            nuevoPunto=(beta)*self.center+(1-beta)*upDot

        elif alpha <=0.75:
            beta=((alpha-0.5)/0.25)
            nuevoPunto=(1-beta)*self.center+(beta)*downDot

        else:
            beta=((alpha-0.75)/0.25)
            nuevoPunto=(beta)*self.center+(1-beta)*downDot

        self.mobject.move_to(nuevoPunto)

    def finish(self):
        self.mobject.move_to(self.center)

Thanks for the video!
I think that is definitely one more reason to push the use of a real video player instead.
#208 mentions using QMediaPlayer, which I think should dramatically reduce the complexity of playing videos, as well as possibly improving performances.
When I have time, I will try to implement such a player, and maybe ask you to test it to see if that solves your problem :)

Hello @Enderh5, I have pushed to the main branch the new player I was mentioning.
Would you mind testing if that solves your issue?
To do so:

Install from the main branch pip install -U git+https://github.com/jeertmans/manim-slides@main.
Render the slides again (configuration files have changed);
Play the slides with manim-slides present

And tell me if the lags are still present :-)
Thanks!

Sorry for the late response, it works now.
It is also smoother, it does not lag even when switching slides.
Thanks for the work!!!

After watching the animation I've noticed that some animations seem to stop a bit early, showing things like this.

This can be fixed easily by adding a wait in the code, but it seemed important to mention it.

Thanks! For your second issue, it was already the case before v5, no?
This is a known bug and the only simple fix is adding a .wait, which can be performed by setting wait_to_between_slides to a positive value :-)

repo: jeertmans/manim-slides


text:
有没可能增加免费证书申请，自动续期功能？

功能描述
有没可能增加免费证书申请，自动续期功能？证书申请后自动推送到指定的存方目录
解决的问题
No response
附加信息
No response
检查清单

[X] 我已搜索同类问题，并确保没有我要提交的功能
[X] 我已使用最新版本，并确保该功能仍未在最新版本中实现

没有。有其他三方工具，可搭配使用。比如https://github.com/NginxProxyManager/nginx-proxy-manager


text:
Socket hang up

I always get this error 'Failed in main with err:  { [Error: socket hang up] code: 'ECONNRESET' }'  anytime i run my bench rest script. I don't really understand why.
Basically the end point I am using bench rest to load carries out some asynchronous tasks. So I looping through any array and I am creating some users in my database and so no response will be sent until that array has completed. Do you think this is the reason why it is hanging up?

It's hard to say what is causing this, could be anything from a timeout to the service crashing.
If none of the iterations is completing without errors then you may want to just use something like curl to get things working before introducing load testing with bench-rest.
If only some of the iterations are erroring out then you may have a scalability issue which is showing up under load and causing things to timeout.
Certainly if your service pauses for too long between handling requests then it could cause timeouts.

@andela-omesanni would you mind sharing the script that you are trying to run??

I'm running this script:
var benchrest = require('bench-rest');

 var flow = {
    main: [
{ post: 'https://192.168.1.88:3000/interactions/updateOrSaveInteractionTree/#{INDEX}/',strictSSL: false, headers: { 'Accept': 'application/json'},json:
{
"ani": " 0333110712341",
"call_Id": "#{INDEX}"
}}
  ]
};

module.exports = flow;

and getting the same error with following stacktrace:
Failed in main, err:  { Error: socket hang up
    at createHangUpError (_http_client.js:331:15)
    at TLSSocket.socketOnEnd (_http_client.js:423:23)
    at emitNone (events.js:111:20)
    at TLSSocket.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1055:12)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9) code: 'ECONNRESET' }

Same API is working fine with curl.

authors: andela-omesanni ffoysal jeffbski saqibahmed515

repo: jeffbski/bench-rest


text:
--tui-htmlfile option causes TypeError, pickling exception

pytest --tui -k test1 --tui-htmlfile=<file>
Traceback (most recent call last):
  File "/usr/local//bin/pytest", line 8, in <module>
    sys.exit(console_main())
             ^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py", line 189, in console_main
    code = main()
           ^^^^^^
  File "/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py", line 166, in main
    ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main(
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 265, in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 80, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 60, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_result.py", line 60, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 39, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 316, in pytest_cmdline_main
    return wrap_session(config, _main)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 311, in wrap_session
    config._ensure_unconfigure()
  File "/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py", line 1051, in _ensure_unconfigure
    self.hook.pytest_unconfigure(config=self)
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 265, in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 80, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 60, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pluggy/_result.py", line 60, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 39, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pytest_tui/plugin.py", line 428, in pytest_unconfigure
    pickle.dump(
TypeError: cannot pickle '_io.TextIOWrapper' object```

Since this is non-critical functionality, removing the --tui-htmlfile option from 11.0 release. To be added back later.

Not sure why the tracback mentioned Python 3.11, since this was run with a 3.9.16 venv

This was caused by using the argparse type=argparse.FileType("w") argument and pointing to type Argparse.FileType('w) (or something similar, whatever). This is unnecessary; removed this line and it works.


text:
make the number of feed entries configurable

This would solve https://github.com/jekyll/jekyll-feed/issues/56 by making the number of feed entries configurable. If the limit is not provided by the user the default value of 10 would be used.

This feature cannot be merged without a coresponding test.
I’m not sure if it was ever decided if the additional config option would be worth the reduced simplicity to the end user.

Oh, but thank you for the PR! :+1:
Didn’t mean to sound so negative there

I have added the test. Looking for the Jekyll team's call on this feature. :sparkles:

@hackerkid thanks for the PR. See the discussion in https://github.com/jekyll/jekyll-feed/issues/56, which was never fully resolved. What's your use case for submitting this pull request? While technically feasible, if the number of posts is arbitrary, we might as well pick a good arbitrary number, and save the user the complexity.

@benbalter I don't have a good use case. But I went through the source of some Jekyll powered blogs. The common feed limits were 10, 15 and 20.  There was no majority for any feed limit. We may be able to find a majority if we increase the number of blogs analysed.

Jekyll Blog
Feed Limit

feross.org
20

mojombo.github.io
No Limit

The Pug Automatic
20

vrepin.org
12

Paper Plane
No Limit

Tagaholic Me
15

Tagaholic
15

http://9leg.com/
10

Wordpress has a built in feature to change the feed limit. Users migrating from Wordpress to Jekyll may like to have a control over the feed limit.

@benbalter I could use this for the Open Design Foundation blog. We have a lot of small resources that end up in the feed as well, which would push out the articles. We are currently using a custom generated file which gets the job done, but the plugin would be cleaner.
To save the user complexity just make a default value to fall back on if the option isn't in the config file. Right now it is 10 which seems like a good place to start.

Looking at @hackerkid's commit that's exactly what he did. If this were merged it would add zero complexity to anyone already using the plugin and add value to anyone looking for this functionality.

If this were merged it would add zero complexity to anyone already using the plugin

@GarthDB I disagree. We'd be required to document it, which means it's another thing you have to read when you're getting started. It also pushes a decision, albeit an optional one, on the user. As I'm setting up my site, should the limit be 5? 10? 15? 20? How do I know?

We have a lot of small resources that end up in the feed as well

Thanks for sharing that use case. Very helpful. I have two questions:

Do you think the majority of users would use the plugin similarly?

Have you found that items were not being picked up by feed readers and that you had to increase the limit? If so, what was that number, and if reasonable for all sites, can we just change the default? Is there any evidence on how often feed readers poll?

@benbalter I'm a fan of the attitude of erring on the side of simplicity; it's easy for things to get out of hand.
Your first question kinda shows why it be good to have a different limit based on the project and content. If there isn't an obvious universal number to set as the limit it could be beneficial to let the users have the ability to decide. I don't see it as pushing the decision to them as much as giving them the ability to decide if they want to.

Not exactly the same way - but if they aren't looking for it I think the majority of users wouldn't mind the extra paragraph it would add to the readme.
For our exact use case it actually depends on what the reader is coming to find. Since new content is published infrequently and most of it is fairly timeless it makes sense to have a long list for new subscribers and it doesn't have a large impact on existing subscribers.

Again, I understand the benefits of simplicity, but Jekyll is a developer aimed tool. We have a marketing manager who writes posts for the PhoneGap Blog, but she had to learn git just to publish posts. The barrier of entry is already huge for anyone not familiar with the basic tool chain. A plugin like this should help streamline and standardize common workflows. If the plugin doesn't have some flexiblity to adapt to the content of the individual project, developers will stick with building custom, less standard solutions.
It's up to you to decide what is valuable to GitHub and it's users, but if you are basing all your decisions on what the majority of users will want, you'll need to do constant indepth user research because you won't know if people would use something if it is never an option. Davatron5000 makes a good point that I think is somewhat in the same vein.

@benbalter I am closing this.

In the hopes that it helps someone (it's easy to do this without a plugin at all):
http://runningblind.com/2018/12/22/jekyll-jekyll-feed-you-don-t-need-it/
That's the route I ended up going. And then tuning the number is just changing the number in your own template.

authors: GarthDB benbalter hackerkid pathawks yyyc514

repo: jekyll/jekyll-feed


text:
Authentication layout

Make an authentication layout

#1


text:
🛑 Google is down

In a86b4d1, Google (https://lavender-buttery-moss.glitch.me/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Google is back up in 97c8cc4.


text:
chore: bdd-spring-1574726068 to 0.0.1

chore: Promote bdd-spring-1574726068 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  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:

OWNERS

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


text:
chore: bdd-spring-1576211881 to 0.0.1

chore: Promote bdd-spring-1576211881 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  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:

OWNERS

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


text:
fix: upgrade to version 3.1.238

from: https://github.com/jenkins-x/jx-cli

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign rajdavies
You can assign the PR to them by writing /assign @rajdavies in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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


text:
when we use filters option and deploy jenkins with configuration as code, plugin is not able to read if secrets are more than 10

Jenkins and plugins versions report
Jenkins Version - 2.346.3
aws secret manger Plugin Version - 1.1.0
What Operating System are you using (both controller, and any agents involved in the problem)?
We are running jenkins as kubernetes pod using helm charts, below are chart details
repo name - https://charts.jenkins.io
chart name - jenkins
version - 3.5.14
Reproduction steps
      awsCredentialsProvider:
        cache: true
        listSecrets:
          filters:
            - key: name
              values:
                %{ for s in secrets ~}
                - ${s}
                %{ endfor ~}

Above is the aws secret manager plugin config used to deploy jenkins as code.
You can assume we are looping through secrets, in the above config.
when the secrets list less than 10 or 10, it works without any issue. But when we provide secrets more than 10 then jenkins is not able to read any of the secret.
When we check the logs it says
Could not list credentials in Secrets Manager: message=[1 validation error detected: Value'[secret1, secrets2....' at 'filters.1.member.values' failed to satisfy constraint: Member must have length less than or equal to 10 (Service: AWSSecretsManager; Status Code: 400; Error Code: ValidationException; Request ID: 4674747477-abccoo-2433; Proxy: null)]
In documentation also I dont see a parameter to configure number of secrets.
Expected Results
We should have field by which we can configure number of secrets to read or all allowed secrets should be read.
Actual Results
We should have field by which we can configure number of secrets to read or all allowed secrets should be read.
Anything else?
No response

Closing because this is only relevant to the Credentials Provider plugin (I know you've posted a separate issue for that).
The SecretSource plugin (this one) does not use a ListSecrets call, and therefore is unaffected by any filter options you might supply.

authors: DeekshithSN chriskilding


text:
[JENKINS-44256] Support for sandbox mode, system groovy scripts.

https://issues.jenkins-ci.org/browse/JENKINS-44256

Might have found a problem in the implementation. Please hold off until I confirm it is working.

Rebased on top of currently HEAD of master
Fixed example to match required format.
I've not had time figure out why writing an XML format that results in the deprecated constructor call in script-security results in a transformation from plain path to URI for the classpaths, while using the current databound constructor XML format, require the classpath entry to be in URI format.

@daspilker, any change you can have a look at this implementation and asses when it can be merged in; or if it needed, propose improvements?
We are currently using our own version due to this missing feature but it would be great if can go back to using the official version. Thanks!

Am I correct in saying this enables us to use sandbox() as a step in our job definition?

@jk563, sorry for my late reply
This feature allows you to configure a system groovy script build step to be run in sandbox mode.
The system groovy script build-step has offer a check-box, marking it to run in sandbox mode, which affects script execution security. This has not been able to set, defaulting to non-sandbox mode.
We needed to run system groovy scripts in sandbox mode, hence this feature.

Does this change anything about being able to use the overloaded / and << operators within job DSL configure blocks  when using the sandbox?

@chancez, My implementation is very much based on the existing implementation and I've made no effort to remedy any such shortcomings if they existed in the original. Sorry.
Now that you made me aware of it, I'll see if I can figure out how to fix that as well, but I can't make any promises of when.
Thank you for the feedback.

@per-bohlin sorry for answering late.
I'm replacing this PR by #1075. I wanted to integrate sandbox support in to existing calls for systemGroovyCommand instead of adding a new variant.

authors: chancez daspilker jk563 per-bohlin

repo: jenkinsci/job-dsl-plugin


text:
Protecting the LockableResourcesManager from Races

Hey guys,
this PR should protect the resources member of the LRM to avoid races (like #149).
Some of the locks might be a little bit overprotective but I think with ephemeral resources
the member will become more volatile and therefore also more vulnerable to races.
The PR is extending the current synchronization by including the scope of returned references.
As synchronized should behave reentrant/recursive, no deadlocks should be possible.
If further stuff is required to merge it, please feel free to tell me.
If I find time, I will also attach a test that tries to provoke such an error.
BR,
BB

@bbara Any chance to resolve the conflicts? Thanks!

@famod of course :)
I removed the reformat commit, @TobiX maybe run mvn fmt:format one time.

FWIW, this doesn't look like the way to go: LockableResourcesManager should be made thread-safe internally, not by sprinkling synchronized liberally all over the code. Its locking behaviour is already too broad and I'm leaning more into pulling the locks tighter around a certain "core", not by expanding the locks until you lock almost every class in the whole plugin...

authors: TobiX bbara famod

repo: jenkinsci/lockable-resources-plugin


text:
Respect sourceSecret for accessing git repos

Fixes #101 and https://bugzilla.redhat.com/show_bug.cgi?id=1390295
FYI @bparees

LGTM

repo: jenkinsci/openshift-sync-plugin


text:
SNMPv3 with stronger protocols

Describe the solution you'd like
SNMPv3 implementation should also support AES192/AES256 for privacy protocols and SHA224/SHA256/SHA284/SHA512 for authentication protocols. And it should be configurable via WebUI.
It would also be great if SNMP Location and Contact can be configured via WebUI
Describe alternatives you've considered
N/A
Is your feature request related to a problem?
NO
Additional information
According to http://www.net-snmp.org/wiki/index.php/Strong_Authentication_or_Encryption functionality is supported since v5.8 and RaspMatic is using 5.9.3.
Using net-snmp-create-v3-user already give options for the SHA algorithms, only AES192/AES256 is missing.
Maybe this one helps (it seems --enable-blumenthal-aes needs to be used for compiling):
https://sourceforge.net/p/net-snmp/mailman/message/36289830/

Hi @jens-maus ,
I just tested it and in general it works! Thanks a lot!
But ;-)
1.)
Can you think about adding configuration options (simple drop downs) to the WebUI to select Auth and Priv Protocol?
2.)
With the default files it is sometimes/somehow not working "out of the box":
vi /etc/config/snmp/snmpd-ccu3.conf:
#
# net-snmp (or ucd-snmp) persistent data file.
#
############################################################################
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
#
#          **** DO NOT EDIT THIS FILE ****
#
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
############################################################################
#
# DO NOT STORE CONFIGURATION ENTRIES HERE.
# Please save normal configuration tokens for snmpd in SNMPCONFPATH/snmpd.conf.
# Only "createUser" tokens should be placed here by snmpd administrators.
# (Did I mention: do not edit this file?)
#

createUser -e 0x80001f88801496a6130a2c1e5e testmon SHA-512 TESTMON1234 AES256 TESTMON1234

usmUser 1 3 0x80001f88801496a6130a2c1e5e "operator" "operator" NULL .1.3.6.1.6.3.10.1.1.3 0x2bxxxxxx .1.3.6.1.6.3.10.1.2.4 0x2bxxxx ""
engineBoots 1
oldEngineID 0x80001f88801496a6130a2c1e5e
rouser operator
rwuser testmon

This results sometimes in a missing oldEngineID directive in /var/lib/snmp/snmpd.conf.
(I added rwuser directive only for testing!) Therefore I suggest to change the command order in the above file (that helped in my case):
#
# net-snmp (or ucd-snmp) persistent data file.
#
############################################################################
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
#
#          **** DO NOT EDIT THIS FILE ****
#
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
############################################################################
#
# DO NOT STORE CONFIGURATION ENTRIES HERE.
# Please save normal configuration tokens for snmpd in SNMPCONFPATH/snmpd.conf.
# Only "createUser" tokens should be placed here by snmpd administrators.
# (Did I mention: do not edit this file?)
#
engineBoots 1
oldEngineID 0x80001f88801496a6130a2c1e5e

createUser -e 0x80001f88801496a6130a2c1e5e testmon SHA-512 TESTMON1234 AES256 TESTMON1234
usmUser 1 3 0x80001f88801496a6130a2c1e5e "operator" "operator" NULL .1.3.6.1.6.3.10.1.1.3 0x2bxxxxxx .1.3.6.1.6.3.10.1.2.4 0x2bxxxx ""

rouser operator
rwuser testmon

And for documentation, here are the protocol names (from createUser) with corresponding OIDs (for usmUser):
AES - .1.3.6.1.6.3.10.1.2.4 (the old one used in RaspberryMatic)
AES128 - .1.3.6.1.4.1.14832.1.2
AES192 - .1.3.6.1.4.1.14832.1.3
AES256 - .1.3.6.1.4.1.14832.1.4
SHA - .1.3.6.1.6.3.10.1.1.3 (the old one used in RaspberryMatic)
SHA-224 - .1.3.6.1.6.3.10.1.1.4
SHA-256 - .1.3.6.1.6.3.10.1.1.5
SHA-384 - .1.3.6.1.6.3.10.1.1.6
SHA-512 - .1.3.6.1.6.3.10.1.1.7
References:
https://oidref.com/1.3.6.1.6.3.10.1.1
https://oidref.com/1.3.6.1.6.3.10.1.2
https://oidref.com/1.3.6.1.4.1.14832.1
Thanks a lot,
Marco

I just tested it and in general it works! Thanks a lot!
But ;-)

Sorry, wrong place for discussions here. Please ask in the discussion part of the repository and not in the old and already closed ticket/issue.

repo: jens-maus/RaspberryMatic


text:
update mk.php

translation for february was not correct and it causes problems with createFromFormat method. it was 'фебруари' and it should be 'февруари'.

Can someone confirm this? :)

@ichernev proposed февруари too on moment:
https://github.com/moment/moment/blame/develop/src/locale/mk.js#L8

Hello @jenssegers still no plan to upgrade to Carbon and rely on our translation instead of maintaining the whole thing twice?

authors: bazel jenssegers kylekatarnls

repo: jenssegers/date


text:
🛑 Wanted Gigs is down

In b7d9673, Wanted Gigs (https://www.wanted.co.kr/gigs) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Wanted Gigs is back up in e67712f.

repo: jeongsk/upptime


text:
500 status code during Gradle OSSIndex plugin call

Describe the bug
Our builds use the Gradle OSSIndex plugins to scan for vulnerabilities.
Often this scan is successful and there are no problems. Yet lately, though intermittent but frequently, the builds run into this:
Caused by: java.net.ConnectException: Server Error (500) 	at net.ossindex.common.request.OssIndexHttpClient.performPostRequest(OssIndexHttpClient.java:122) 	at net.ossindex.common.request.PackageRequest.run(PackageRequest.java:121) 	at net.ossindex.gradle.audit.DependencyAuditor.runAudit(DependencyAuditor.java:69)
Version of dependency-check used
The problem occurs using version 5.1.1 of the the Gradle plugin.
Log file
Full exception stack is at https://gist.github.com/wraschke/84a80af92ed7136fab624b8467a8263e.
There isn't more information from the server other than this status code.
To Reproduce
Not sure how an outsider user could reproduce in our particular environment.
Expected behavior
We don't expect a 500 status code from the server.
Additional context
The source for the plugin class making POST request appears to be at https://github.com/OSSIndex/java-api/blob/master/src/main/java/net/ossindex/common/request/OssIndexHttpClient.java. I'm presuming the POST request is being made to https://ossindex.sonatype.org/v2.0/

If you are using the OSS Index Gradle client (i.e. not ODC) you probably want to open the ticket within their repo: https://github.com/OSSIndex/ossindex-gradle-plugin/issues
This does not look related to dependency-check at all.

authors: jeremylong wraschke

repo: jeremylong/DependencyCheck


text:
False Negatives in Python for tensorflow and scikit-learn due to ECOSYSTEM setup

Hi,
thank you for developing this great tool, really cool to use it :)
Currently I am checking a requirements.txt with dependency-check and found that some python packages (scikit-learn and tensorflow) are not detected correctly because their ECOSYSTEM is set to 'naitve' in the CPEENTRY table.
If I change it manually to 'python' or NULL by connecting to the local
h2 database, dependency-check maps the cpe correctly and finds corresponding CVEs
I know that python is supported experimentally, but probably it is an easy fix.

Generated report by dependency-check:

--> could not map the cpe
Connecting with java -jar h2-1.4.199.jar to the local database jdbc:h2:dependency-check/data/odc;LOCK_MODE=0;AUTOCOMMIT=ON;CACHE_SIZE=65536;RETENTION_TIME=1000;MAX_COMPACT_TIME=10000;
and running:
UPDATE CPEENTRY SET ECOSYSTEM='python' where product='tensorflow'
UPDATE CPEENTRY SET ECOSYSTEM='python' where product='scikit-learn'

Modified the ECOSYSTEM of tensorflow and scikit-learn:

Generated report by dependency-check after modifying the ecosystem:

--> is able to map the cpe and finds CVEs
Changing ECOSYSTEMs values is probably not the right way to go, but I thought this is still worth a hint.
Run command (the requirements.txt is in ~/test_project):
sh dependency-check/bin/dependency-check.sh --project test_project --scan ~/test_project/ --out ~/ --log ~/odc.log --enableExperimental
Dependency-Check Core version 6.1.2

Updating the ecosystem might be the correct solution - but it should be updated to MULTIPLE:
UPDATE cpeecosystemcache
SET ecosystem='MULTIPLE'
WHERE vendor='tensorflow' AND product='tensorflow'

UPDATE cpeecosystemcache
SET ecosystem='MULTIPLE'
WHERE vendor='scikit-learn' AND product='scikit-learn'

authors: MaximilianBlanck jeremylong


text:
False Positive on jedis.jar - reported as redis

False positive on library jedis.jar - reported as cpe:2.3:a:redis:redis:3.7.0:*:*:*:*:*:*:*
pkg:maven/redis.clients/jedis@3.7.0
<dependency>
  <groupId>redis.clients</groupId>
  <artifactId>jedis</artifactId>
  <version>3.7.0</version>
</dependency>

False report on CVE-2021-32626

authors: Nriver andy-may-at


text:
[FP]: h2-mvstore as dependency of nitrite reports H2 vulnerabilities

Package URl
pkg:maven/com.h2database/h2-mvstore@1.4.200
CPE
cpe:2.3:a:h2database:h2:1.4.200:::::::*
CVE
CVE-2021-42392, CVE-2022-23221, CVE-2021-23463
ODC Integration
{"label"=>"Maven Plugin"}
ODC Version
8.1.0
Description
h2-mvstore used as dependency in nitrite (pkg:maven/org.dizitart/nitrite@3.4.3) reports vulnerabilities of H2 database.
It seems as false positive, when used without whole com.h2database:h2 package, since vulnerabilities were found in utils, console and jdbc related packages of H2.

As we are a small team we opted not to micromanage the CVEs of different parts of a project/framework that is released as a whole. While these appear to be proper false-positives they would have to be added to the suppressions of your own project.

authors: aikebah beMonika


text:
--nvdDatafeed parameter is not recognized

Describe the bug
As described here, the arg --nvdDatafeed is not working. I get the following error:

Unrecognized option: --nvdDatafeed file:///builds/platform/service-api/cache

Version of dependency-check used
The problem occurs using version  v10.0.2 of the cli.
Log file

dependency-check.sh --scan ./target/service-api-1.95.0-feature.11047.jar --nvdApiKey [MASKED] --failOnCVSS=7 --disableAssembly --out target/owasp-dependency-check -f HTML -f XML -f JSON --nvdDatafeed "file:///builds/platform/service-api/cache"
Unrecognized option: --nvdDatafeed "file:///builds/banking-platform/service-mfa-api/cache"
usage: Dependency-Check Core [--advancedHelp] [--enableExperimental]
[--exclude ] [-f ] [--failOnCVSS ] [-h]
[--junitFailOnCVSS ] [-l ] [-n] [--nvdApiKey ]
[-o ] [--prettyPrint] [--project ] [-s ]
[--suppression ] [-v]

To Reproduce
Steps to reproduce the behavior:

Create a local cache using vulnz
Scan the depencies with dependency-check cli using the --nvdDatafeed argument using file:// protocol

Expected behavior
dependency-check cli should load data from the cache URL provided in --nvdDatafeed.
Additional context
Add any other context about the problem here.

try --nvdDatafeed=file:///builds/platform/service-api/cache

Thanks @jeremylong this did the. Still, I realized one thing - wrapping the URL in quotes would lead to an error of:

org.owasp.dependencycheck.data.update.NvdApiDataSource.getRemoteCacheProperties(NvdApiDataSource.java:601)
...
Caused by: java.net.URISyntaxException: Illegal character in scheme name at index 0: "file:///builds/platform/service-api/cache"/cache.properties

I don't know if this is disired behaviour, but from the usability it does not feel right.
I've also tried to clone the repo to contribute, but I was not able to build. I've followed the exact same steps from the README.
Here is the output:
[ERROR] Tests run: 484, Failures: 0, Errors: 2, Skipped: 11
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for Dependency-Check 10.0.3-SNAPSHOT:
[INFO]
[INFO] Dependency-Check ................................... SUCCESS [  1.272 s]
[INFO] Dependency-Check Utils ............................. SUCCESS [  7.358 s]
[INFO] Dependency-Check Core .............................. FAILURE [ 19.412 s]
[INFO] Dependency-Check Command Line ...................... SKIPPED
[INFO] Dependency-Check Ant Task .......................... SKIPPED
[INFO] Dependency-Check Maven Plugin ...................... SKIPPED
[INFO] Dependency-Check Plugin Archetype .................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  28.363 s
[INFO] Finished at: 2024-07-11T14:33:19+02:00
[INFO] ------------------------------------------------------------------------

I'll close this issue and would appreciate a feedback for above mentioned points.
Thanks

authors: dgroh jeremylong


text:
Load ktlint dependency always when Kotlinter applied

Before we only add the dependency configuration when a compatible kotlin plug is detected which doesn't work for projects with only custom kotlinter tasks. Fixes #423

Really ought to have a project test for this, but will catch up after getting the fix out.

repo: jeremymailen/kotlinter-gradle


text:
silent_refresh erro on remote identity provider

Folks,
Did you face this problem?
When executing this project, if the angular app and the keycloak are on the same server, the example runs perfectly (local). When changing to a remote keycloak, after log in, the silent_refresh_error occurs.
The only difference is the issuer.
It works:
export const authConfig: AuthConfig = {
issuer: 'http://localhost:8080/auth/realms/myrealm',
clientId: 'spa-sigga-platform', // The "Auth Code + PKCE" client
responseType: 'code',
redirectUri: window.location.origin + '/index.html',
silentRefreshRedirectUri: window.location.origin + '/silent-refresh.html',
scope: 'openid profile email', // Ask offline_access to support refresh token refreshes
useSilentRefresh: true, // Needed for Code Flow to suggest using iframe-based refreshes
silentRefreshTimeout: 5000, // For faster testing
timeoutFactor: 0.25, // For faster testing
sessionChecksEnabled: true,
showDebugInformation: true, // Also requires enabling "Verbose" level in devtools
clearHashAfterLogin: false, // https://github.com/manfredsteyer/angular-oauth2-oidc/issues/457#issuecomment-431807040,
requireHttps: false
};
It not works:
export const authConfig: AuthConfig = {
issuer: 'http://172.20.0.247:8080/auth/realms/myrealm',
clientId: 'spa-sigga-platform', // The "Auth Code + PKCE" client
responseType: 'code',
redirectUri: window.location.origin + '/index.html',
silentRefreshRedirectUri: window.location.origin + '/silent-refresh.html',
scope: 'openid profile email', // Ask offline_access to support refresh token refreshes
useSilentRefresh: true, // Needed for Code Flow to suggest using iframe-based refreshes
silentRefreshTimeout: 5000, // For faster testing
timeoutFactor: 0.25, // For faster testing
sessionChecksEnabled: true,
showDebugInformation: true, // Also requires enabling "Verbose" level in devtools
clearHashAfterLogin: false, // https://github.com/manfredsteyer/angular-oauth2-oidc/issues/457#issuecomment-431807040,
//nonceStateSeparator : 'semicolon', // Real semicolon gets mangled by IdentityServer's URI encoding
requireHttps: false
};
Chrome console output:

Hey! Sorry to hear you're having issues. However, this sounds like something quite specific to your setup and situation, and not so much an issue or bug with this sample repository? This sample is just a single-person project by me, so I don't really have time to support individual cases via this issues list. I recommend turning to a consultant, a forum, stack overflow, or similar. Hope you'll understand?

Ok.
I believe my problem is related to another issue about Chrome not allowing cookies. I'm already following on another thread. Thanks for the feedback. Your samples helped me a lot!
Thanks!

You might be interested in #40 and the blogpost I wrote about that topic. Maybe that helps? Take care!

authors: alvaroamorim jeroenheijmans


text:
Non global config

Hi, is it possible to override global config? E.g. I would like to use sometimes short distance swipe with default tapTolerance = 10 but sometimes I need to use long distance swipe e.g. tapTolerance = 300. It seems that there is only one option item that support inline configuration per element... touchClass => v-touch-class. I have tested similarly v-tap-tolerance or v-touch-tap-tolerance but it does not work.

Hi, global configuration overriding is  not supported yet.

See PR https://github.com/jerrybendy/vue-touch-events/pull/53 What about you? Is it possible to merge please?

Hi, the constructor of VueTouchEvents has many options, not only swipeTolerance. So I think add a directive for Tolerance only is not a good idea.
I think, it would be better to add an option parameter to the handlers to override default options. Like below:
Tap

Ok, I will use so far my forked version in my project. I'm looking forward to use options in future as you suggested.

v2.2.0 has been released. The usage changes to using v-touch-options to customize configuration for specified component.
something

Hi, there is a little bug in v2.2.0. See PR https://github.com/jerrybendy/vue-touch-events/pull/54

Thanks for your PR. I have merged it and release a new version v2.2.1. 😄

(Sorry for my english) I think the implementation is not good. For me the idea I think, it would be better to add an option parameter to the handlers to override default options. was better. Right now if you want to change disableClick option (in my project disableClick is true in global options) it could not work, cause you change options later than add event listener for our element. In developer version you can define v-touch-options first and it will work, but in production mode it could be tricky.
works:
    v-touch-options="{ disableClick: false }"     v-touch:swipe.left="handleSwipe"
doesn't work:
    v-touch:swipe.left="handleSwipe"     v-touch-options="{ disableClick: false }"

Hi  @breslauer ,
My English is not good either. The problem you said is really an issue. The v-touch directive doesn't know the overwirted value of disableClick when binding events. This causes this issue. Do you have any advice to solve this?

authors: breslauer jerrybendy nolimitdev

repo: jerrybendy/vue-touch-events