text:
Deploy to Heroku error

I tried to deploy the app to Heroku using the button in the README.
This is the log I have inside Heroku
017-04-12T10:08:20.042923+00:00 app[worker.1]: npm ERR! Failed at the facebot@0.0.8 start script 'node bin/run_postgres.js'.

2017-04-12T10:08:20.043207+00:00 app[worker.1]: npm ERR! not with npm itself.

2017-04-12T10:08:20.043049+00:00 app[worker.1]: npm ERR! This is most likely a problem with the facebot package,

2017-04-12T10:08:20.043442+00:00 app[worker.1]: npm ERR!     node bin/run_postgres.js

2017-04-12T10:08:20.043876+00:00 app[worker.1]: npm ERR!     npm owner ls facebot

2017-04-12T10:08:20.043327+00:00 app[worker.1]: npm ERR! Tell the author that this fails on your system:

2017-04-12T10:08:20.043688+00:00 app[worker.1]: npm ERR! You can get their info via:

2017-04-12T10:08:20.046829+00:00 app[worker.1]:

2017-04-12T10:08:20.044001+00:00 app[worker.1]: npm ERR! There is likely additional logging output above.

2017-04-12T10:08:20.047143+00:00 app[worker.1]: npm ERR!     /app/npm-debug.log

2017-04-12T10:08:20.047037+00:00 app[worker.1]: npm ERR! Please include the following file with any support request:

Same here.
The problem is emoji.init_env();
2017-04-14T07:04:54.237748+00:00 app[worker.1]: /app/lib/facebot.js:27
2017-04-14T07:04:54.237768+00:00 app[worker.1]:     emoji.init_env();
2017-04-14T07:04:54.237769+00:00 app[worker.1]:           ^
2017-04-14T07:04:54.237770+00:00 app[worker.1]:
2017-04-14T07:04:54.237771+00:00 app[worker.1]: TypeError: emoji.init_env is not a function
2017-04-14T07:04:54.237772+00:00 app[worker.1]:     at new Constructor (/app/lib/facebot.js:27:11)
2017-04-14T07:04:54.237773+00:00 app[worker.1]:     at Object.<anonymous> (/app/bin/run_postgres.js:101:15)
2017-04-14T07:04:54.237774+00:00 app[worker.1]:     at Module._compile (module.js:435:26)
2017-04-14T07:04:54.237774+00:00 app[worker.1]:     at Object.Module._extensions..js (module.js:442:10)
2017-04-14T07:04:54.237775+00:00 app[worker.1]:     at Module.load (module.js:356:32)
2017-04-14T07:04:54.237776+00:00 app[worker.1]:     at Function.Module._load (module.js:313:12)
2017-04-14T07:04:54.237776+00:00 app[worker.1]:     at Function.Module.runMain (module.js:467:10)
2017-04-14T07:04:54.237777+00:00 app[worker.1]:     at startup (node.js:136:18)
2017-04-14T07:04:54.237778+00:00 app[worker.1]:     at node.js:963:3

You need to pull the latest GitHub version as commit 34e951763bbf74a75c789cf22fb6cc3280fdfd34 fixed it.  May need to manually merge into the deploy branch.

Well, I just clicked the link on the master branch so this commit should have been included

It depends there is a deploy branch changes have not been merged into yet and that is the default:  https://heroku.com/deploy?template=https://github.com/Weetbix/facebot/tree/deploy  see.
We are currently working to fix some items up with facebot.  I would assume that branch will be updated soon.
Try this (note I did not test just updated deploy with master):
https://heroku.com/deploy?template=https://github.com/MitchCapper/facebot/tree/deploy_updated
Again the official one will be updated once the rest of the code/cleanup updates are done I would assume.

2017-04-14T14:23:48.246102+00:00 app[worker.1]: /app/lib/util.js:6
2017-04-14T14:23:48.246123+00:00 app[worker.1]: async function getFBUserInfoByID(api, id) {
2017-04-14T14:23:48.246125+00:00 app[worker.1]:       ^^^^^^^^
2017-04-14T14:23:48.246125+00:00 app[worker.1]:
2017-04-14T14:23:48.246126+00:00 app[worker.1]: SyntaxError: Unexpected token function
2017-04-14T14:23:48.246127+00:00 app[worker.1]:     at exports.runInThisContext (vm.js:53:16)
2017-04-14T14:23:48.246127+00:00 app[worker.1]:     at Module._compile (module.js:414:25)
2017-04-14T14:23:48.246128+00:00 app[worker.1]:     at Object.Module._extensions..js (module.js:442:10)
2017-04-14T14:23:48.246129+00:00 app[worker.1]:     at Module.load (module.js:356:32)
2017-04-14T14:23:48.246130+00:00 app[worker.1]:     at Function.Module._load (module.js:313:12)
2017-04-14T14:23:48.246130+00:00 app[worker.1]:     at Module.require (module.js:366:17)
2017-04-14T14:23:48.246131+00:00 app[worker.1]:     at require (module.js:385:17)
2017-04-14T14:23:48.246131+00:00 app[worker.1]:     at Object.<anonymous> (/app/lib/facebot.js:8:14)
2017-04-14T14:23:48.246132+00:00 app[worker.1]:     at Module._compile (module.js:435:26)
2017-04-14T14:23:48.246133+00:00 app[worker.1]:     at Object.Module._extensions..js (module.js:442:10)
2017-04-14T14:23:48.246134+00:00 app[worker.1]:     at Module.load (module.js:356:32)
2017-04-14T14:23:48.246134+00:00 app[worker.1]:     at Function.Module._load (module.js:313:12)
2017-04-14T14:23:48.246135+00:00 app[worker.1]:     at Module.require (module.js:366:17)
2017-04-14T14:23:48.246135+00:00 app[worker.1]:     at require (module.js:385:17)
2017-04-14T14:23:48.246136+00:00 app[worker.1]:     at Object.<anonymous> (/app/bin/run_postgres.js:7:15)
2017-04-14T14:23:48.246137+00:00 app[worker.1]:     at Module._compile (module.js:435:26)

Please do not add this "Deploy to Heroku" in the master branch README before it's ready :smile:
Thanks for your job anyway, I'll just wait for the next release :wink:

Deploy to heroku worked just fine previously, the problem is a library got updated and it is pegged against head which broke it.   Yeah the new async seems more up to date than heroku.  Technically the emoji fix is a two line change, but due to facebook API updates it will be better for you to wait for an official release for everything to work.

There is one more test you can do, I updated the engine, I don't have heroku to test with but you can give it another shot if you want.  Otherwise next release is probably not too far out.

Master is updated and tested to work locally and on heroku now 👍

authors: Weetbix flocca mitchcapper yannbertrand

repo: Weetbix/facebot


text:
Showing 'last edited / created'

Considering using this package.
https://github.com/jazzband/django-simple-history

Installed.

source: gharchive/issue

repo: WeightliftingNZ/lifter-api

license: MIT

license_type: permissive

license_source: github-api


text:
migrate to asp.net core 3.0

migrate to asp.net core 3.0

asp.net core 3.0 with ef core 2.x app had been deployed

repo: WeihanLi/ActivityReservation


text:
Version 2.7.0 is bugged

Header is disappearing on scroll and all dates appearing 0 instead the real number.
I'll update more info soon.
Downgraded to 2.6.0 and it's working properly.

Thanks for the info I was struggling with relaodData() that was making the header disappears.

Thanks @lucianocn . This is fixed.

authors: WenchaoD chamixxx lucianocn

repo: WenchaoD/FSCalendar

license: mit

license_source: bigquery


text:
Im using FSCalendar in tableview cell, calendar is working fine but their is an issue while reusing the cell by scrolling up the tableview to the calendar. The tableview became glitchy. her is my code inside cell for row at indexPath:

let calendarCell = calendarTableView.dequeueReusableCell(withIdentifier: "calendarReuse")
let calendarView = calendarCell.viewWithTag(1) as! FSCalendar
calendarView.delegate = self
calendarView.dataSource = self
calendarView.register(DIYCalendarCell.self, forCellReuseIdentifier: "cell")
calendarView.reloadData()
return calendarCell
I am trying to remove "CalendarView.reloadData()" the table view is working fine, but the calendar not loading data anymore.

I also have this issue


text:
Now you can select a date before minimum date if you want

In my project, I need to represent as selected a date before the minimum date. With this commit, you can decide if It is possible. Will remain unavailable select this date by touching.

A better work around is to check before selection.
BOOL isDateInRange = ( [date compare:self.calendar.minimumDate] == NSOrderedDescending && [date compare:self.calendar.maximumDate] == NSOrderedAscending );

Thanks for trying this.

source: gharchive/pull-request

authors: WenchaoD marcoslgm


text:
Can not execute the example code.

1. System Info
PyPots 0.2.1
Python 3.11.5
Windows 11 64bit
2. Information

[X] The official example scripts
[ ] My own created scripts

3. Reproduction
'# It is PyPots basic example on the Github page
import numpy as np
from sklearn.preprocessing import StandardScaler
from pygrinder            import mcar
from pypots.data          import load_specific_dataset
from pypots.imputation    import SAITS
from pypots.utils.metrics import cal_mae
'# here I corrected calc_mae to cal_mae
'# Data preprocessing. Tedious, but PyPOTS can help.
data = load_specific_dataset('physionet_2012')  # PyPOTS will automatically download and extract it.
X = data['X']
num_samples = len(X['RecordID'].unique())
X = X.drop(['RecordID', 'Time'], axis = 1)
X = StandardScaler().fit_transform(X.to_numpy())
X = X.reshape(num_samples, 48, -1)
X_ori = X             # keep X_ori for validation
X     = mcar(X, 0.1)  # randomly hold out 10% observed values as ground truth
dataset = {"X": X}    # X for model input
print(X.shape)  # (11988, 48, 37), 11988 samples, 48 time steps, 37 features
'# Model training. This is PyPOTS showtime.
saits = SAITS(n_steps=48, n_features=37, n_layers=2, d_model=256, d_inner=128, n_heads=4, d_k=64, d_v=64, dropout=0.1, epochs=10)
'# Here I use the whole dataset as the training set because ground truth is not visible to the model, you can also split it into train/val/test sets
saits.fit(dataset)
4. Expected behavior
I did no modification to the basic example but I can not execute it.

Hi there 👋,
Thank you so much for your attention to PyPOTS! You can follow me on GitHub to receive the latest news of PyPOTS. If you find PyPOTS helpful to your work, please star⭐ this repository. Your star is your recognition, which can help more people notice PyPOTS and grow PyPOTS community. It matters and is definitely a kind of contribution to the community.
I have received your message and will respond ASAP. Thank you for your patience! 😃
Best,
Wenjie

Hi Youngmin @kym0802, which version of PyGrinder you're using?

Hi Weijie. My PyGrinder version is 0.4. I updated it now, and shows it again.
I installed PyGrinder through Conda. Could it be a problem?

Try upgrading your PyPOTS version to 0.3. If the error still exists, please paste the whole traceback log here.

repo: WenjieDu/PyPOTS


text:
Fix a bug in CRLI, switch to BSD-3 license

What does this PR do?

fixing #225;
fixing #227;

Before submitting

[x] This PR is made to fix a typo or improve the docs (you can dismiss the other checks if this is the case).
[x] Was this discussed/approved via a GitHub issue? Please add a link to it if that's the case.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have written necessary tests and already run them locally.

Pull Request Test Coverage Report for Build 6765674629

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.04%) to 84.148%

Files with Coverage Reduction
New Missed Lines
%

pypots/classification/base.py
1
76.42%

pypots/clustering/crli/model.py
1
90.6%

Totals

Change from base Build 6703157405:
-0.04%

Covered Lines:
4374

Relevant Lines:
5198

💛  - Coveralls

authors: WenjieDu coveralls


text:
Getting holes in decimated surface, not sure what to try

PA2 STREET FG with Sukut.zip
Here is a zip of my original obj file before decimating. Rename to .obj from .txt once open.
I got really good results on many files but then some get the holes. Pic shows this:

Can you advise what to adjust to deal with these? My surfaces are far from 0,0 and have coords like 6000000,2000000 for x and y. Does moving things closer to 0,0 help?
The civil engineering industry lives and dies by keeping tri counts low on surfaces and no one has done as good of a job as your ported tool does. I would pay to get it working robustly if it needs that. I might just not have the settings right though. I tried about everything the readme mentioned.
I almost think the indexing is getting messed up, as the tris missing are large, not thin slivers that get "rejected" as colinear tris by my prog when I import.
I am using your library to make surface tools that work in autocad and bricscad and decimation is a missing ability so far.

I will have a closer look at this in the weekend, when I have more time available.
It doesn't look like these holes are close to any border or seam, so it definitely looks like a bug.
But I will have a closer look and then get back to you with my findings.
Thank you for reporting it!

awesome, I will also do some tests. Like I say, your tool does way better than anything I've seen. Its fast too, just a few seconds to decimate 600k tris to 50%. I forgot to mention, I tried turning off the smart linking and that caused nothing to work. That is, even after many iterations, the result was same as original. That might be a clue. Now that I know you are active on it I will look closer.

I played more, and was able to get a much smaller dataset that replicated the kinds of errors involved.
Temp.zip
The zip has before and after obj files. I decimated using 0.3 factor.
Notice both missing tris in middle, and much around the edges. Before and after shown:

an even smaller dataset that has same kinds of issues:
Temp.zip
I know that sometimes half the battle is replicating the issues on small sets of data so hopefully this eases the pain a bit.

Thank you very much for these samples!
It definitely helps!
I have looked into this a bit more, and I actually think that the problem is with the OBJ file parsing, not the decimation process. But I will dig deeper and see if I can confirm and also fix it.
I'll get back to you once I know more.
Thanks again!

Alright, so I did find problems with the OBJ file parsing, and I reworked it in order to solve them.
But that was only part of the problem. The meshes that you have provided appear to have seams in certain places, and the feature I have called "smart linking" is meant to solve this as well as it can. While this feature is enabled by default, it can be tweaked through a property on the FastQuadricMeshSimplification class called VertexLinkDistanceSqr.
Tweaking this value to 0.001 I managed to get better looking results, but saw some other artifacts appear instead. If you use the CLI provided here, then that property cannot not for the time being be controlled through there without adding an extra line after here like this (ugly code):
(algorithm as MeshDecimator.Algorithms.FastQuadricMeshSimplification).VertexLinkDistanceSqr = 0.0001;

I released version 0.3.0 (changelog), with the OBJ file parsing fix and another fix I detected a while ago but never got around to fix related to the VertexLinkDistanceSqr settings.
Below are some screenshots of the differences (your original file and 0.01 decimation factor):
Version 0.2.1

Version 0.3.0

Version 0.3.0 with modified vertex link distance

They are all very different results, and while the last one is the best it still has holes and an unwanted artifact that you can see at the top of the image.
Tweaking the VertexLinkDistanceSqr property can give you better results, but do not increase it too much since it will slow down the algorithm and start messing up your decimation results. Other than that, the algorithm generally works best if the seams that do exist share vertex positions and not just the edge of the triangles, if you understand what I mean?
While there are surely ways to fix this, one of my goals with this is for it to be as quick as possible. And to start analyzing edges additionally would reduce the speed greatly. Let me know if you have any other ideas.
I would still like to look into the artifacts that I can see. Triangles start to appear across the mesh when the  VertexLinkDistanceSqr property is much lower.
Unfortunately that's as much as I can assist for now. But I hope this helps you.
Please tell me how it goes.
Thanks!

awesome! thanks a bunch for your work on this, I will test today.
The term "seam" you mentioned is not quite clear to me. Is that when a triangle is missing, so there is a hole? That can happen in my surfaces as I use a variety of tools to make the TIN from 3d linework and points, then I read their triangles and reject any collinear ones, thus leaving some missing. Maybe that means something else though. thx

I see, that is what I thought. I did try preserving seams earlier and it caused zero decimation.
But will try with new version. My surfaces do have holes in them, but I think I can split them up into parts without holes, and assemble back in the end, or other approaches. The situation you show above is something I should be dealing with better. I think I will look closer at any rejected tris from the tin creation engine and heal the holes. Thanks for fast responses, I am testing your revised code now.

did more tests today. The new code is working well with factor 0.0001 and PreserveBorders on. I feel like these tools are way underutilized. If you only knew how the GIS world can benefit from simplifying surfaces in the "optimized" (not dumb grid or random point sampling) way, there would be many more interested. In particular, the crowd trying to turn point clouds into TIN surfaces need something to tone down their huge tri counts. There are so many uses for this, I've looked for this for literally years. thx

I'm glad that you find it useful. I originally created this for a personal game project because I couldn't find any mesh decimation algorithm that worked at run-time in Unity (they only worked offline) and they were all very very slow. I never imagined that people would ever find this. I just wanted to have something public on my GitHub profile.
It's cool to see it being used in other areas than I had originally anticipated.
While I appreciate that you use my library for this, I would also recommend this library which is far more advanced with many more features. I haven't measured it in terms of speed however, so I'm not sure how it compares.
Please tell me if there's anything more that I can assist you with.

Nice, I had not seen that library before. I need to be looking for those about every 6 months. I typically watch for delunay triangulation, mesh manipulation, GIS data read/write, and image manipulation. Seems you found one for me!

authors: Whinarn jmaeding

repo: Whinarn/MeshDecimator


text:
Friendlier error when key id is malformed.

I accidentally put in the spreadsheet email, instead of the id in the yaml file.  And the stacktrace wasn't that helpful.  So this code specifically catches that type of error, and then does a sys.exit(-1).
The exit seems ok because otherwise it would raise anyway.
The imports spaces are just a ⌥⌘O (optimize imports) thing in IntelliJ.  Not sure if you want me to not do that.

Import organization sounds good to me too.

authors: WhiteHalmos robert-wallis

repo: WhiteHalmos/emailer


text:
error

Hi, I always get the error:
{ message: '401: Unauthorized', code: 0 }
if someone wants to authorize...
Please help!

Hi Boostcounyer,
Did you enter your client ID and client secret in oauth.js?

Closed due to inactivity. Please reopen your issue if this problem persists.


text:
Create barcode without plain text

Is there an option to generate the barcode without the plain text?

You can subclass writers and override the text render method. It probably makes sense to add a flag for this though, since it's a rather common request.
class ImageWitoutTextWriter(ImageWriter):
    def _paint_text(self, xpos, ypos):
        pass

I'm added in class ImageWriter variable print_text. Default value is True, if need create barcode without text, writer=ImageWriter(False)
`class ImageWriter(BaseWriter):
    def __init__(self, print_text=True):
        BaseWriter.__init__(self, self._init, self._paint_module,
                            self._paint_text, self._finish)
        self.format = 'PNG'
        self.dpi = 300
        self._image = None
        self._draw = None
        self.print_text = print_text

    def _init(self, code):
        size = self.calculate_size(len(code[0]), len(code), self.dpi)
        if not self.print_text:
            size = (size[0], int(size[1] * 0.7))
        self._image = Image.new('RGB', size, self.background)
        self._draw = ImageDraw.Draw(self._image)

    def _paint_module(self, xpos, ypos, width, color):
        size = [(mm2px(xpos, self.dpi), mm2px(ypos, self.dpi)),
                (mm2px(xpos + width, self.dpi),
                 mm2px(ypos + self.module_height, self.dpi))]
        self._draw.rectangle(size, outline=color, fill=color)

    def _paint_text(self, xpos, ypos):
        if self.print_text:
            font = ImageFont.truetype(FONT, self.font_size * 2)
            width, height = font.getsize(self.text)
            pos = (mm2px(xpos, self.dpi) - width // 2,
                   mm2px(ypos, self.dpi) - height // 4)
            self._draw.text(pos, self.text, font=font, fill=self.foreground)`

Would you like to make that into a PR?

For anyone reading this today, _paint_text has been renamed to _create_text.

Was this ever integrated into main? I don't see it in https://github.com/WhyNotHugo/python-barcode/blob/main/barcode/writer.py

For anyone reading this today, _paint_text has been renamed to _create_text.

Just to clarify, the rename is only on SVGWriter, in ImageWriter still uses the _paint_text

authors: AxelRHD WhyNotHugo formgi georgek nabelekt zipus

repo: WhyNotHugo/python-barcode


text:
The health sync is not work

I came across the fact that synchronizing the hearts sync does not work, my config are:
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃        HuskSync Config       ┃
┃    Developed by William278   ┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┣╸ Information: https://william278.net/project/husksync
┣╸ Config Help: https://william278.net/docs/husksync/config-file/
┗╸ Documentation: https://william278.net/docs/husksync
Locale of the default language file to use.
Docs: https://william278.net/docs/husksync/translations
language: ru-ru
Whether to automatically check for plugin updates on startup
check_for_updates: true
Specify a common ID for grouping servers running HuskSync. Don't modify this unless you know what you're doing!
cluster_id: ''
Enable development debug logging
debug_logging: false
Whether to provide modern, rich TAB suggestions for commands (if available)
brigadier_tab_completion: false
Whether to enable the Player Analytics hook.
Docs: https://william278.net/docs/husksync/plan-hook
enable_plan_hook: true
Database settings
database:
Type of database to use (MYSQL, MARIADB, MONGO)
type: MYSQL
Specify credentials here for your MYSQL, MARIADB OR MONGO database
credentials:
host: 127.0.0.1
port: 3306
database: HuskSync
username: root
password: ()
# Only change this if you have select MYSQL or MARIADB
parameters: ?autoReconnect=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
# Only change this if you have selected MONGO
mongo_auth_db: admin
MYSQL / MARIADB database Hikari connection pool properties. Don't modify this unless you know what you're doing!
connection_pool:
maximum_pool_size: 10
minimum_idle: 10
maximum_lifetime: 1800000
keepalive_time: 0
connection_timeout: 5000
Names of tables to use on your database. Don't modify this unless you know what you're doing!
table_names:
user_data: husksync_user_data
users: husksync_users
Redis settings
redis:
Specify the credentials of your Redis database here. Set "password" to '' if you don't have one
credentials:
host: 127.0.0.1
port: 6379
password: ''
use_ssl: false
Options for if you're using Redis sentinel. Don't modify this unless you know what you're doing!
sentinel:
# The master set name for the Redis sentinel.
master: ''
# List of host:port pairs
nodes: []
password: ''
Redis settings
synchronization:
The data synchronization mode to use (LOCKSTEP or DELAY). LOCKSTEP is recommended for most networks.
Docs: https://william278.net/docs/husksync/sync-modes
mode: LOCKSTEP
The number of data snapshot backups that should be kept at once per user
max_user_data_snapshots: 16
Number of hours between new snapshots being saved as backups (Use "0" to backup all snapshots)
snapshot_backup_frequency: 4
List of save cause IDs for which a snapshot will be automatically pinned (so it won't be rotated).
Docs: https://william278.net/docs/husksync/data-rotation#save-causes
auto_pinned_save_causes:

INVENTORY_COMMAND
ENDERCHEST_COMMAND
BACKUP_RESTORE
LEGACY_MIGRATION
MPDB_MIGRATION

Whether to create a snapshot for users on a world when the server saves that world
save_on_world_save: true
Configuration for how and when to sync player data when they die
save_on_death:
# Whether to create a snapshot for users when they die (containing their death drops)
enabled: true
# What items to save in death snapshots? (DROPS or ITEMS_TO_KEEP). Note that ITEMS_TO_KEEP (suggested for keepInventory servers) requires a Paper 1.19.4+ server.
items_to_save: DROPS
# Should a death snapshot still be created even if the items to save on the player's death are empty?
save_empty_items: true
# Whether dead players who log out and log in to a different server should have their items saved.
sync_dead_players_changing_server: true
Whether to use the snappy data compression algorithm. Keep on unless you know what you're doing
compress_data: true
Where to display sync notifications (ACTION_BAR, CHAT, TOAST or NONE)
notification_display_slot: ACTION_BAR
Persist maps locked in a Cartography Table to let them be viewed on any server
persist_locked_maps: true
Whether to synchronize player max health (requires health syncing to be enabled)
synchronize_max_health: true
If using the DELAY sync method, how long should this server listen for Redis key data updates before pulling data from the database instead (i.e., if the user did not change servers).
network_latency_milliseconds: 500
Which data types to synchronize.
Docs: https://william278.net/docs/husksync/sync-features
features:
ender_chest: true
potion_effects: true
location: false
statistics: true
health: true
hunger: true
persistent_data: true
inventory: true
game_mode: true
advancements: true
experience: true
Commands which should be blocked before a player has finished syncing (Use * to block all commands)
blacklisted_commands_while_locked:

'*'

Event priorities for listeners (HIGHEST, NORMAL, LOWEST). Change if you encounter plugin conflicts
event_priorities:
death_listener: NORMAL
quit_listener: LOWEST
join_listener: LOWEST

Please get in touch on discord for further assistance :)


text:
Cws 1256 reset app timer

This adds handling for user_typing messages from the SF LiveAgent app, ignoring and excluding them from the chat transcript, but honoring their custom fields in order to allow control of the widget timer from the SF app.

@bhardwajaditya can you review please?  thanks.


text:
Iain to listen to podcast

http://www.philosophyinaction.com/podcasts/2014-01-19-Q1.html

Subscribed - and out

repo: WikiLogic/WikiLogic


text:
Change own password

User should be able to change their own password through the 'My Account' link in the upper right profile menu - as documented here - https://docs.google.com/document/d/1rDXmdlB3lfqAb7uAhR1u96LbyNaUyl3_2t2O_C0kI_E/edit?pli=1#bookmark=id.fm2m7txszq6 and designed here - https://mongodb.invisionapp.com/share/VJXLVXNPGW4#/screens/422332164 (click the 'change password' button)

@brittanylau this would be a great one to take if you have some time!

@Sheeri sounds good, I'll check it out tomorrow! :)

Ok. Just FYI this involves realm so let me know if you don’t have a build environment set up, I can get you access to my test env.

@Sheeri it seems that changing Realm user passwords can only be done through a password reset. Realm's password reset function requires we pass in a token and tokenId, which can only be retrieved from an email sent to the user.
I could be misunderstanding the docs, so let me know if any Realm experts have other ideas! :)
Here's what would be needed:

Send an email to the user to confirm their identity (valid for 30 mins)

User clicks on a password reset link provided in the email (Realm appends the token and tokenId as query parameters)

URL and email subject are customizable

User enters a new password on the page

Where should we integrate these extra steps in the flow?

Nevermind! I misunderstood the docs after all :) PR coming in shortly!

authors: Sheeri brittanylau o-fish-wildaid

repo: WildAid/o-fish-web


text:
AbstractBlock: make method getMainElement() public.

I think it will be more useful to make method getMainElement() public. In current protected implementation I can not use this method from pages.

After some discussion, we decided to keep things as is. It's quite a good feature not-to make TeasyElement-returning methods as public (to prevent the direct use of them in tests classes). Instead, you may create a necessary method in your Block class that will take all necessary data from mainElement and return it to outer-world. Hope this help. Closing this issue for now.

authors: nankibykova vefimofff

repo: WileyLabs/teasy


text:
Erlang

Based on https://github.com/WhatsApp/tree-sitter-erlang, doesn't include highlighting, yet.
Fixes #394.

Merged in e6cec41e238d85d045ed9aada0c69e5e100e1547, thanks!

authors: Wilfred filmor

repo: Wilfred/difftastic


text:
Pixel id by domain/language

Is your feature request related to a problem? Please describe.
I have an app that has multiple domains and by domain has a different language and a different pixel_id code. Im using the nuxt-i18n package to manage this, but i cannot get the actual language from the nuxt.config file.
Describe the solution you'd like
An option, similar to the one for routes, but by domains.

same problem, missed option in config to set right language, any solution?

Same problem.
you could user this code
{   modules: [     'nuxt-facebook-pixel-module',   ],   facebook: {     pixelId: 'DEFAULT_PIXEL_ID',     pixels: [       {         pixelId: 'FACEBOOK_PIXEL_ID',         routes: [           '/my-custom-route',           '/hello/*'         ]       }     ]   }, }
but the problem is that the load the default pixel and the pixel by router at the same time.

Same problem, seems to track both default and route pixel on configured routes. Any updates?

authors: ejpg ksolberg sgsrra vana-dev


text:
Newton

navbar & gitignore

Good job!


text:
Legacy Crafting doesn't work on servers

I assume this is probably intentional, but regardless.. you straight up can't use the legacy crafting interface if you go on a multiplayer server that isn't running the mod, meaning Classic Crafting is mandatory for multiplayer as a result.

This is impossible to work in servers without the mod, sorry, but 2 versions of the same screen(Classic Crafting) with different functions, and auto-crafting are impossible without modding the server-side.

authors: Chilly-roll Wilyicaro

repo: Wilyicaro/Legacy-Minecraft


text:
Holding shift and touching the ground while flying forward makes the hand bob down

I'm not sure why this happens, but I don't think it should.
https://github.com/Wilyicaro/Legacy-Minecraft/assets/161091467/3721256a-bf8c-4ae9-9030-18023e8acfed

It's not a Legacy4J issue, it may not match LE, but it's still not a problem, the change should preferably be suggested on the Legacy4J Group


text:
unrecognized arguments error

thanks for this aswesome work .  when I run this code , I  got unrecognized arguments error,  what is the problem?
I had mannually download the pretrained molel in ./stabilityai/stable-diffusion-2-base/512-base-ema.safetensors
python main.py --harmonize_iterations 10 --save_dir "./output" --is_single_image --image_path "./demo/girl_comp.jpg" --mask_path "./demo/girl_mask.jpg" --foreground_prompt "girl autumn" --background_prompt "girl winter" --pretrained_diffusion_path "./stabilityai/stable-diffusion-2-base/512-base-ema.safetensors" --use_edge_map
usage: main.py [-h] [--pidinet_model PIDINET_MODEL] [--sa] [--dil] [--config CONFIG] [--evaluate EVALUATE] [--gpu GPU]
main.py: error: unrecognized arguments: --harmonize_iterations 10 --save_dir ./output --is_single_image --image_path ./demo/girl_comp.jpg --mask_path ./demo/girl_mask.jpg --foreground_prompt girl autumn --background_prompt girl winter --pretrained_diffusion_path ./stabilityai/stable-diffusion-2-base/512-base-ema.safetensors --use_edge_map

Hi @msskaa12 ,
Thanks for catching that bug! It's been fixed in the latest commit. You can grab the updated code or just make the same changes as shown here. It should work.
Cheers.

Thanks for your prompt reply. It works

repo: WindVChen/Diff-Harmonization


text:
Unable to launch application using custom button

Trying to create a custom button that will launch an application but it doesn't appear to work. (SCCM Software Centre)
$audio1 = New-BTAudio -Source 'ms-winsoundevent:Notification.Reminder'
$visual1 = New-BTVisual -BindingGeneric $binding1
$button3 = New-BTButton -Content 'Launch App' -Arguments 'C:\Windows\CCM\ClientUX\SCClient.exe' -ActivationType Protocol
$action3 = New-BTAction -Buttons $button3, $button4, $button5
$content1 = New-BTContent -Audio $audio1 -Visual $visual1 -Actions $action3
Submit-BTNotification -Content $content1
Configuring the button to launch a URL works fine, however, if -Arguments is configured to a file path nothing happens when the button is clicked.

Could you try to  pass  this line as arguments
runas.exe /savecred /user:Domain\User " cmd /c start "C:\Users\iba\Desktop\yourEXEfilegoeshere.exe"
ActivationType Protocol Uses Windows Uri Scehma i think you could make you own entry
https://msdn.microsoft.com/en-us/library/aa767914(v=vs.85).aspx

Thanks ibrahimsharif,
I wasn't able to get the above argument working, however, I did come across the 'Create your own URI' post when I originally tested this. I created a custom URI to launch the required app and it works fine.
One of the scenarios we wanted to address was launch SCCM software centre, thankfully Microsoft already create a URI for this so we replace one of the arguments with $argument2 = 'softwarecenter://'
We took the information from the software center URI and created our own custom one.

Creating a custom URI to launch a specific program does work. However, I found it cumbersome to create unique URI's for every unique action that I might like to call from a BT button.
For a generalized solution, I created a single custom URI that points to a locally staged instance of the PowerShell App Deployment Toolkit. Then I use the toolkit script to process the argument string that launched the protocol and take the necessary action. The way I designed my script, it can execute either an EXE or a PS1, with optional parameters in both cases.
With this, now I have a single setup routine to run on each client PC which does the following:

Install BurntToast Module
Install custom AppID MSI
Configure the single custom URI
Stage the PS App Deploy Toolkit instance

And I can now launch any EXE or PS1 with parameters going forward without any other URIs to configure. I can whip out new notifications to my users with fully customized actions in no time now!
Note: If you're comfortable developing in Visual Studio, you could probably create a dedicated command line app to do the same thing, instead of using PSADT. I'm just far more comfortable with PowerShell.

Can you elaborate how you did this in PowerShell? I tried setting up a custom URI in registry - it's working everywhere else except when clicking the Toast Notification button.

Can you elaborate how you did this in PowerShell? I tried setting up a custom URI in registry - it's working everywhere else except when clicking the Toast Notification button. <

The same goes for me, doe you have some information on how you got this working?

Creating a custom URI to launch a specific program does work. However, I found it cumbersome to create unique URI's for every unique action that I might like to call from a BT button.
For a generalized solution, I created a single custom URI that points to a locally staged instance of the PowerShell App Deployment Toolkit. Then I use the toolkit script to process the argument string that launched the protocol and take the necessary action. The way I designed my script, it can execute either an EXE or a PS1, with optional parameters in both cases.
With this, now I have a single setup routine to run on each client PC which does the following:
* Install BurntToast Module

* Install custom AppID MSI

* Configure the single custom URI

* Stage the PS App Deploy Toolkit instance

And I can now launch any EXE or PS1 with parameters going forward without any other URIs to configure. I can whip out new notifications to my users with fully customized actions in no time now!
Note: If you're comfortable developing in Visual Studio, you could probably create a dedicated command line app to do the same thing, instead of using PSADT. I'm just far more comfortable with PowerShell.

Could you share how you created your custom URI and how you are passing that in the arguments?  I have also done everything you have listed here, and the URI works if launched in IE or other local methods, but NOT from this toast message.  Arggg....

I didn't do anything special for the URI protocol handler. Refer to this documentation: https://msdn.microsoft.com/en-us/library/aa767914(v=vs.85).aspx
As for how I pass all the necessary information to the handler script, I do that by writing all the info to a formatted temp file (like xml or json). Then I pass that info file to the custom protocol, like custom protocol://path/to/my/settingsFile.xml.
Then my handler script reads the xml and executes the action with whatever parameters were specified.

One thought... Toast actions have a couple of different supported types. Make sure you're using the protocol action type.

Can you elaborate how you did this in PowerShell? I tried setting up a custom URI in registry - it's working everywhere else except when clicking the Toast Notification button. <

The same goes for me, doe you have some information on how you got this working?

@martinisoft1 @bbadger86 Did either of you figure out how to run a powershell script through the button action? I have the URI command working fine everywhere other than the notification as well! Configured my URI command as follows
powershell.exe -executionpolicy unrestricted -file <filename.ps1>

@rishabhnag1 Your PowerShell launch string does not constitute a valid URI. Please review the link in my comment above to familiarize yourself with URI creation and formatting.  In short, there is no way for you to call a PowerShell script directly from the toast. You have to create a handler app with a published URI protocol and pass your script to that handler.

I was able to achieve this with a batch script.
Protocol handler command line
C:\ProgramData\BurntToast\BurntToast.cmd %1

BurntToast.cmd
powershell.exe -WindowStyle hidden -NonInteractive -ExecutionPolicy Bypass -NoLogo -NoProfile  -Command "& '%1'.Replace('powershell://', '').Trim('/')"

I demo'ed this at RTPSUG last week (video will be out at some stage, and code is on it's way to their repo)
I was pointing it at a .ps1 file from the .cmd and trimming the protocol out of the string from inside the script... but I like your way better @adamdriscoll
If people want this packaged up with a helper or two inside the BurntToast module, I can do that. Otherwise I plan on documenting the crap out of it.

In addition to protocol handlers, it's now possible to run any code via a toast notification action. This does require PowerShell 7.1 or above and BurntToast 0.8.0.
This blog post shows it in action, though with v0.8.0 it's a lot easier to take advantage of this via some new parameters on New-BurntToastNotification and Submit-BTNotification. Documentation for this is  coming soon, for now check out the end of this live stream.

repo: Windos/BurntToast


text:
[Bug] "Back" mobile navigation and HamburgerMenu

I noticed strange behaviour on Windows 10 Mobile with my hamburger template project. Steps:

Run project (phone or emulator)
Navigate to DetailsPage.
Navigate to MainPage with HamburgerButton from HamburgerMenu
Press "Back" buton.
Application does not go back to DetailsPage but terminate without exception!

I tested this on phone with Windows 10 Mobile Insider version and on emulators (10.10240 and 10.10586). Do you have this problem in your projects?

Nothing odd and this is possible if page history is cleared by MainPage navigation. See a XAML excerpt for <Controls:HamburgerMenu shown below with ClearHistory set to True.
<c:HamburgerButtonInfo x:Name="LandingPage"
    ClearHistory="True"
    PageType="views:MainPage">

ClearHistory has its advantages to avoid convoluted navigation (my own phraseology!) and start new navigation from top, but the downside is the app exits because navigation is cleared and it assumes a gate to exit it all. To overcome this (say, from users perspective) I would intercept the BootStrapper.BackRequested event, check if the PageType is one with ClearHistory OR if navigation stack depth is zero and warn the user that the next back button will exit the app (you can use a nice dialog). I navigate to the landing page (Home Page) to offer this dialog.

@dg2k Thanx a lot. It works! It`s not a bug. ClearHistory set to false works fine in my scenario.

Of course, not a BUG; it's by Design.

You should really close your non-bugs

authors: JerryNixon dg2k marcinmarkiewicz


text:
Discussion: using HamburgerMenu from UWP Community Toolkit

I saw that UWPCommunityToolkit have a great HamburgerMenu control with NavigationView. Why we don't build NavViewEx on this implementation?
https://github.com/Microsoft/UWPCommunityToolkit/tree/master/Microsoft.Toolkit.Uwp.UI.Controls/HamburgerMenu

That's not correct because the UWPCommunityToolkit's HamburgerMenu is obsolate: see.
They suggest to use NavigationView instead.


text:
Add VCacheable instance for Float

This commit adds encoding and decoding functions for Floats to allow them to be stored in VCache.

I remember having trouble building. Could you attach a build log for verification?

Hi @Wizek, this project is using Cabal, right? When I tried to do a fresh clone and build today, I couldn't seem to get cabal configure to work. It's failing on lmdb >=0.2.5 -- which is installed. I suspect this might be standard Debian apt-repo problems.
When I ran a build on my laptop (Ubuntu), it got to stm >=2.4.3. What could be preventing that from building? Wouldn't Cabal download STM as it's a Haskell package? I am assuming STM is Software Transactional Memory. I have run cabal update.
$ cabal build
Package has never been configured. Configuring with default flags. If this
fails, please run configure manually.
Resolving dependencies...
Warning: solver failed to find a solution:
Could not resolve dependencies:
trying: vcache-0.2.7 (user goal)
next goal: easy-file (dependency of vcache-0.2.7)
Dependency tree exhaustively searched.
Trying configure anyway.
Configuring vcache-0.2.7...
cabal: Encountered missing dependencies:
direct-murmur-hash -any,
easy-file -any,
filelock -any,
lmdb >=0.2.5,
stm >=2.4.3

authors: Wizek ancarda

repo: Wizek/haskell-vcache


text:
Modifier prompt failure

First failure here:
https://www.wolframcloud.com/obj/bobs/SharedNBs/chat-error-2.nb

Debug Data

Property
Value

Name
"Wolfram/Chatbook"

Version
"1.3.0"

ReleaseID
"e00b6cf8cf704b8be1a076ef98717a70deab7304"

EvaluationEnvironment
"Session"

FrontEndVersion
"Desktop: 14.0 for Mac OS X x86 (64-bit) (October 27, 2023)"

KernelVersion
"14.0.0 for Mac OS X x86 (64-bit) (October 27, 2023)"

SystemID
"MacOSX-x86-64"

Notebooks
True

DynamicEvaluation
False

SynchronousEvaluation
False

TaskEvaluation
False

Settings

Property
Value

StyleSheetVersion
"1.3.0.3907219780"

Stack Data
catchTopAs
constructMessages
cellToString
throwFailure
trimURL

Failure Data
<|
  "Evaluation" :> Wolfram`Chatbook`Serialization`Private`truncateString[$Failed, 5000]
  "Failure" -> Failure[Wolfram`Chatbook`ErrorUtils`DownValueFallthroughError, <|"Symbol" -> Wolfram`Chatbook`Serialization`Private`truncateString, "ArgumentList" -> HoldComplete[{$Failed, 5000}], "MessageTemplate" -> "Arguments applied to symbol `` did not match any DownValues.", "MessageParameters" -> {HoldForm[Wolfram`Chatbook`Serialization`Private`truncateString]}|>]
  "Arguments" -> {}
  "Stack" :> Wolfram`Chatbook`Common`Private`$stack$49828
|>

I see the same truncateString[$Failed, 5000] error when the chat history includes tool calls

repo: WolframResearch/Chatbook


text:
After paying and following the setup instructions I am still unable to use wolfram notebook assistant and in all tryouts it did not work

Describe the issue in detail here. Attach any relevant screenshots or files. The section below was automatically generated. Remove any information that you do not wish to include in the report.
https://github.com/WolframResearch/Chatbook/blob/92802b1ef8f559233ce0b012c36984092f64df5b/Source/Chatbook/PromptGenerators/VectorDatabases.wl#L635-L642

Debug Data

Property
Value

Name
"Wolfram/Chatbook"

Version
"2.0.1"

ReleaseID
"92802b1ef8f559233ce0b012c36984092f64df5b"

EvaluationEnvironment
"Session"

FrontEndVersion
"Desktop: 14.1 for Microsoft Windows (64-bit) (July 16, 2024)"

KernelVersion
"14.1.0 for Microsoft Windows (64-bit) (July 16, 2024)"

SystemID
"Windows-x86-64"

Notebooks
True

DynamicEvaluation
False

SynchronousEvaluation
False

TaskEvaluation
False

Settings

Property
Value

InheritanceTest
True

SetCellDingbat
False

TabbedOutput
False

WorkspaceChat
True

AllowSelectionContext
True

AppName
"NotebookAssistance"

LLMEvaluator
"NotebookAssistant"

MaxContextTokens
32768

MaxToolResponses
3

Model
<|"Service" -> "LLMKit", "Name" -> Automatic|>

PromptGenerators
{"RelatedDocumentation"}

ServiceCaller
"NotebookAssistance"

Tools
{"NotebookEditor"}

ToolSelectionType
<|"DocumentationLookup" -> None, "DocumentationSearcher" -> None|>

ToolOptions
<|"WolframLanguageEvaluator" -> <|"AppendURIPrompt" -> True, "Method" -> "Session"|>|>

AutoGenerateTitle
True

AutoSaveConversations
True

ConversationUUID
"55ebcd6f-2fe2-4592-9693-d35bd6e81d0a"

StyleSheetVersion
"1.5.2.3.3941177587"

Failure Data
<|
  "Evaluation" :> Wolfram`Chatbook`PromptGenerators`VectorDatabases`Private`getAndCacheEmbeddings[{"User: How many people live in the Netherlands", "User: How many people live in the Netherlands"}],
  "Information" -> "PackedArray@@Source/Chatbook/PromptGenerators/VectorDatabases.wl:635,19-642,10",
  "ConfirmationType" -> "ConfirmBy",
  "Expression" :> Join[$Failed][[{2, 1}]],
  "Function" -> Developer`PackedArrayQ,
  "Stack" :> Wolfram`Chatbook`Common`Private`$stack$14782,
  "Failure" -> Failure["ConfirmationFailed", <|"MessageTemplate" -> "PackedArray@@Source/Chatbook/PromptGenerators/VectorDatabases.wl:635,19-642,10", "MessageParameters" -> {}, "ConfirmationType" -> "ConfirmBy", "Expression" :> Join[$Failed][[{2, 1}]], "Information" -> "PackedArray@@Source/Chatbook/PromptGenerators/VectorDatabases.wl:635,19-642,10", "Function" -> Developer`PackedArrayQ|>],
  "Arguments" -> {}
|>

Stack Data
trimURL
throwFailure
catchTop
formatGeneratedPrompt
catchTopAs
withChatState

After paying and following the setup instructions I am still unable to use wolfram notebook assistant and in all tryouts it did not work. I did not find an approach to get it working but need the assistant asap.


text:
Added projects policies

Summary

Added projects policies

:+1:

authors: epintos mdesanti

repo: Wolox/codestats


text:
feat: Add disabled prop

Description of Change
Allow to show color values in a read-only/editing disabled mode.
See https://github.com/Wondermarin/react-color-palette/pull/72#issuecomment-2339512062

I used the readonly attribute for inputs b/c I think it is appropriate. I remember some browsers don't allow copying from disabled inputs.
Not sure if the dimmed appearance of the read-only inputs is needed (https://github.com/Wondermarin/react-color-palette/pull/72#discussion_r1632353691). Chrome by default uses the same color for r/o and r/w inputs.
For non-inputs I used aria-readonly instead of disabled (https://github.com/Wondermarin/react-color-palette/pull/72#discussion_r1632353478), b/c disabled is not standard for div.

Released in v7.3.0!

authors: Wondermarin dcsaszar

repo: Wondermarin/react-color-palette


text:
🔗Switch to relative path

C:\Users\David\Desk- gtfo of here 😡
BAM 💥💥
./supportdump.txt 😎😎😎😎😎

😱OMG INSANE
It was unusable before 😔
Truly REVOLUTIONARY 🤯
INNOVATIVE 😲😲😲


text:
🛑 My site is down

In 5082394, My site ($URL_TO_MONITOR) was down:

HTTP code: 0
Response time: 0 ms

Resolved: My site is back up in 7103e07.


text:
False positive / VIP.ValidatedSanitizedInput

if ( ! isset( $_POST['shortcode'] ) || $_POST['shortcode'] === '' ) {
	exit( '-1' );
}

IMHO the above usage should be ok. Yes, the value is not sanitized, but this comparison does not yield a situation where the non-sanitized variable could in any way be dangerous.
Detected usage of a non-sanitized input variable: $_POST (WordPress.VIP.ValidatedSanitizedInput.InputNotSanitized)

Duplicate of #186.

Good catch, thanks!

authors: JDGrimes jrfnl


text:
Allows setting custom shortcut for opening search page. Closes #7

This closes #7.
First sorry I had to open another PR because I accidentally deleted my fork. I've closed the old one.
Users in Chrome set their keyboard shortcuts via "settings/extensions". Users should set the "Open your memory overview" as the "Activate this extension" is going to be removed once we implement #6. I don't think setting a custom shortcut in Firefox is possible for now without installing any other extensions that handles that.
It also sets suggested key on Mac to "MacCtrl". This forces the key to "Ctrl" otherwise it gets interpreted as "Command". If "Command" is the desired key it should be set explicitly.
This also removes default setting of overriding the new tab in chrome. It would always open the extension and it might be annoying to some users.

@urbancvek Maybe relevant? https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/commands

This last commit adds a check before opening overview. It check url of the current tab and if the url is valid opens url in the new tab. If the url is not valid (empty, "chrome://newtab/"...) it opens it in the current tab.

@urbancvek and me just had a quick convo about how to handle the firefox case.
As Firefox does not support adding global shortcut, we can't make them modifiable. Therefore we also leave out a standard short cut.
As a valid alternative is making a tutorial for Chrome users how to add shortcuts. This is possible by installing another extension: https://addons.mozilla.org/de/firefox/addon/keybinder/#id=538504
@urbancvek I just tried it out with the current WorldBrain extension and it does not show the ability to add a shortcut, but it did show me for other extensions. Hence I wondered if we have to implement some browser actions to be able to assign new shortcuts to them:

@urbancvek This is what it shows in the manifest of the Zotero extension:
"commands": {
		"_execute_browser_action": {
			"suggested_key": {
				"default": "Ctrl+Shift+S"
			}
		}
	},

Ok great will add that. I had that in one of the commits in this PR, when I wanted to combine openOverview with default action. Will just add this "_execute_browser_action". Where should we have a tutorial for how to set the shortcuts? On the website?

Where should we have a tutorial for how to set the shortcuts? On the website?

probably on the website/subreddit and then link to it in the tool. Will do that.

I had that in one of the commits in this PR, when I wanted to combine openOverview with default action.

It seems as if you could define and modify more than one shortcut with Keybinder anyhow. So you can put as many as you feel are necessary in there.

Custom shortcuts are not possible in Firefox right now unless they are written in XUL. The problem is that Firefox is leaving XUL behind. Right now Firefox is still implementing WebExtensions API and this is a major overhaul for them. This is why part of WebExtension API that is supported on Chrome (like custom shortcuts) is still not implemented in Firefox.
Writing options page in XUL right now I think is not a idea since it will not work and it would probably take quite a long time to do it.
This PR should probably be accepted as it adds custom shortcuts in chrome and removes new tab replacement.

This PR should probably be accepted as it adds custom shortcuts in chrome and removes new tab replacement.

Ok, accessing the overview then should be possible via the drop down (different issue)...
So ok. I think if you are fine with it @poltak then lets merge.

Just had a play with this. The keybinding seems to work fine (and it works on firefox for me as well... dev edition 54.0a2). Some issues though:

new tab page still opens to overview in both FF and Chrome (not sure if I need to do something?)
I can't seem to access options page on FF (again, maybe I'm missing something; I'm mainly using Chrome for dev and web use)
on Chrome the options page is now in this little unresponsive modal; I can't seem to access it the old way anymore:

I have to say sorry, as I should have tested this properly as well. It is work that I could take off your shoulders.
Now that I tried to play with it as well, I can't build it. When building the background.js file, it constantly gives me the error "unexpected token". But that happens for all versions, also the master.

I had problem yesterday that I didn't have synced branches with master. When rebasing I forgot to include a commit. Those that I added a few minutes ago: "Remove chrome url..." and "options_ui overrides..." Everything works for me now as it did before I messed up with rebasing.

@urbancvek Cheers, those things seem to work good now (the FF options thing I mentioned is unrelated). Looking at the original issue, it seems to be all resolved now. Great work! 🎉

authors: oliversauter poltak urbancvek

repo: WorldBrain/WebMemex


text:
Fixes indexing of web apps.

Adds debouncing to indexing of a page for each tab. (waits for 10s before indexing)

I've created a new PR I think this way it will be much simpler. I couldn't get it to rebase correctly. Whatever I did I had to solve too many conflicts and then still had over 100 commits of difference. I think the problem was that even before I started working on this feature I did a merge of a master instead of a rebase.
It only comes down to one commit really and I just thought it would be much simpler to merge it this way.

Alright, had a bit of a play and seems to be working alright. All good with the new PR; maybe it is easier given that the overall changes are small. Takes over from PR #21 and will close issue #11.
Thanks @urbancvek ! 😃

authors: poltak urbancvek


text:
Colors

This isn't done yet as it has some bugs. Pretty pictures:
Derived from "Mariana" scheme

Derived from "Blue Thunder" scheme

Derived from "Breakers" scheme

I've been fudging with getting the foreground and background colors switched because as you can see, for some reason it selects the background while it should select the foreground.

There is a bug/feature of add_region: if the background of the scope is exactly the same as the background of the theme. The foregound and background colors would be inverted.
That's why the theme background is #000000 while the scope backgrounds are #000001

Thanks, I never would have guessed the problem was there. add_regions foils my plans yet again ;)

Things are starting to look okay now. I'll have to think of another way to represent terminalview.black_black though.

Starts to work pretty good now:

One problem I have is that there's supposed to be a ninth color called "default", but pyte doesn't seem to care about that:

What is the expected result for the default color? Isn't it showing white color now?

How do think the idea of generating settings like
'terminal_color_0'  : '#000000',
'terminal_color_1'  : '#ff8787',
'terminal_color_2'  : '#87d75f',
'terminal_color_3'  : '#ffd75f',
'terminal_color_4'  : '#87afff',
'terminal_color_5'  : '#af87ff',
'terminal_color_6'  : '#d7ff87',
'terminal_color_7'  : '#bfbfbf',
'terminal_color_8'  : '#000000',
'terminal_color_9'  : '#ff8787',
'terminal_color_10' : '#87d75f',
'terminal_color_11' : '#ffd75f',
'terminal_color_12' : '#87afff',
'terminal_color_13' : '#af87ff',
'terminal_color_14' : '#d7ff87',
'terminal_color_15' : '#bfbfbf',

and applying them to TerminalView in run_time? It will give much more controls to users.

I think that's okay, but I worry for the startup time. Would that be noticeable?

If we only do it once until Sublime Text restarts, it should okay.

Very interesting - while personally I like the black/white scheme it is definitely nice that it can adapt to user color scheme. I'll just wait a bit with pulling this until we have 0.5 out then we can look into including this for 0.6 :+1:

Yeah, I'm aiming for 0.6 for this PR.

A few notes after testing this:
I ran into a bit of trouble since I don't have any dark blue color in my color scheme (I think). My light blue was used for cyan and magenta was used for blue (thus magenta was not visible):

I still like this approach but I'm worried about it giving users an inconsistent experience. Maybe TerminalView should ship with a default color scheme similar to what we have now + a few alternatives that can be selected through settings (like maybe a light version with white background). Among the alternatives this could be one of them - a sort of auto color scheme.
Another concern I have if we were to use this as default color scheme is that it doesn't set TerminalView apart from the rest of ST3. I think it's a good thing to have a somewhat different color scheme (atleast as default) since it signals to the user that it's not like the rest of ST3 (different keybindings etc.).
What do you think ?

I'm okay with this being an optional setting in the settings. Preferences differ from person to person and I like my terminal to look like any other view.
For the magenta being black, I think the function extracted only 5 colors and added a black color to get six (see here). Furthermore it then assigned "magenta-ish" to the blue reference color because blue just so happens to come before magenta. The magenta-ish color should have been assigned to the magenta reference. I think that's a bad idea now and I'd like to change the algorithm so that it can better handle schemes with few colors.
Can you put your color scheme in a gist so I can experiment with it?

Color scheme: https://gist.github.com/Wramberg/4c3701579a5c18b581f3f1df4fb521b1
Keep up the nice work - this is quite a cool feature :-)

Just to give an update: cie2000 works now, but it gives basically the same results as cie1994.
Also, your color scheme has 11 colors, so the problem is not that it has too few colors. The problem is actually that while it looks like the magenta color is black, it's actually fairly close (a distance of about 30 units, 15 units is "very close"). The problem is that it is also happens to be very close to the background color. My idea is to check the distance to the background color, and if it's "too close" to the background, change the lightness somehow to account for that. For this, I need to be able to convert from L*a*b* back to RGB, so I'll have to implement those conversion functions.

Thank you for the feature.
It wouldn't hurt to write in readme that you need to restart sublime in order for the changes to take place.
I finally read it from this pull request after almost giving up :P

Hi @johanson, glad you like it. I never got around to finishing this, because it needs a few things still:

It should be optional.
Probably should use the newly introduced .sublime-color-sheme format instead of the old .tmTheme format.

Like @Wramberg I'm occupied with work these days, I'll see if I can find the time to pick this up some day again.

authors: Wramberg johanson randy3k rwols

repo: Wramberg/TerminalView


text:
Convert HTML to Markdown in place if code snippets are selected

If the HTML code is selected the conversion to Markdown is now performed in place, without opening a new tab.
Use case: adding (HTML) content to existing markdown documents.
The explicit type Promise<void> was causing the error Illegal value for 'line' documented here

Thanks David, this is a good enhancement.
I don't see any place says explicit type  Promise<void> causes error Illegal value for 'line', after the code translated into js, the type annotation is gone, how can it impact the program in runtime?

authors: Wtango david-it

repo: Wtango/vscode-html-to-markdown


text:
Why not use Cross-validation technique?

Hi, I want to know why don't you split the training set to training and validation set. It is normal to do that, but I don't see that in your code. Also, did the FER2013 winner used the cross-validation technique? Thanks.

FER2013 has validation set itself, so we can train in the training set and validate in the validation set.


text:
dynamically updating params

I want to tie the p.js params to an object in the state of a parent component (which renders the particles component), by passing it as a prop, so that I can update the state (e.g. change the size of the particles) and have that be immediately reflected. It doesn't seem to work though.
<Particles
  width="100%"
  height="100%"
  params={this.state.ParticlesConfig}
  style={{ width: "100%", position: "absolute", zIndex: -1, backgroundColor: "#000" }}
 />

I've verified that the params are actually being updated by using the React Chrome devtools and inspecting the props of the Particles component.

The problem is going to be fixed in v2.1.2.
Now the library will reset when props passed to the component change.
Notice that when props change, the canvas will reload entirely, so the particles will be deleted and replaced with new particles.

authors: Wufe gach

repo: Wufe/react-particles-js


text:
可视化文字是方框

作者大佬你好，我是从这次rc1版本开始使用你的插件的，出来的可视化图片里的文字是方框，已经安装字体插件和部分字体文件（nonebot-plugin-imageutils和ubuntu的fonts-noto）

https://github.com/X-Skirt-X/nonebot_plugin_dialectlist/blob/5f066da85110ca762cb90cd24dbadb5490a311ec/nonebot_plugin_dialectlist/qqDBRecorder.py#L10
将这段代码中的font_family="SimHei"改为你系统里有的字体试试？

更新了字体配置

authors: X-Skirt-X izumishigure


text:
🛑 m2 is down

In a58be74, m2 (https://m2.codeforces.com) was down:

HTTP code: 502
Response time: 1051 ms

Resolved: m2 is back up in a938031.

Resolved: m2 is back up in a938031.


text:
🛑 Polygon is down

In 8c86469, Polygon (https://polygon.codeforces.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Polygon is back up in e55b176.


text:
fix some Include issue

add project root path & utils to header search path. use relative path to include header file in project is better than only use file name.

@czsilence  Thank you for your efforts!

authors: czsilence xrdavies

repo: XDagger/xdag


text:
edgecase: nothing inside in Memo Field

According to the data validation logic for the Memo Class at, https://github.com/XRPLF/xrpl-py/blob/6900bcfe041bba7adae35f231c622b796bfb2b58/xrpl/models/transactions/transaction.py#L104-L117
An error should occur if any of the three fields in the Memo are missing. However, the transaction E64A81D9FDE13F2FE28A98F337809D894E3279C75ED8E784114C650A04DFC65C has the following value with tesSUCCESS:
    "Memos": [
      {
        "TransactionMetaData": {}
      }
    ],

This causes an issue when loading the data using the Memo class. I'd like to inquire if this is an acceptable case when only using this class for transaction submissions.

full tx
{
  "result": {
    "Account": "rEX2Q18vQziVAJoiLwoVHN5u87CXm29LCQ",
    "Fee": "10",
    "Flags": 2147483648,
    "Memos": [
      {
        "TransactionMetaData": {}
      }
    ],
    "Sequence": 45,
    "SigningPubKey": "033D098A1F0664D894D0D542006541CDDC997E1B5A5F1A6E63BE5B83E12AAF00D2",
    "TransactionType": "AccountSet",
    "TxnSignature": "30440220267138C6A207F981BE736424242F30AC1E23434778B222DD1CEB6AA4D975DC16022039560C18E5E12615D8542BF270CDF04501E80CD6D9F27595ABE8F601E91DE7D9",
    "hash": "E64A81D9FDE13F2FE28A98F337809D894E3279C75ED8E784114C650A04DFC65C",
    "meta": {
      "AffectedNodes": [
        {
          "ModifiedNode": {
            "FinalFields": {
              "Account": "rEX2Q18vQziVAJoiLwoVHN5u87CXm29LCQ",
              "Balance": "32005485",
              "Flags": 0,
              "OwnerCount": 2,
              "Sequence": 46
            },
            "LedgerEntryType": "AccountRoot",
            "LedgerIndex": "BCCEA6B346A29656AFD37B8AB7F573DA705AB7A86D9FE197AC6CB1E9D5772EDB",
            "PreviousFields": {
              "Balance": "32005495",
              "Sequence": 45
            },
            "PreviousTxnID": "FECA13A8D357E141DA6D9118C82BDC33188ACE62164FB0609FB5905AB0F03E6F",
            "PreviousTxnLgrSeq": 7266352
          }
        }
      ],
      "TransactionIndex": 3,
      "TransactionResult": "tesSUCCESS"
    },
    "validated": true,
    "date": 456420830,
    "ledger_index": 7266368,
    "inLedger": 7266368
  },
  "id": 1,
  "status": "success",
  "type": "response",
  "warnings": [
    {
      "id": 2001,
      "message": "This is a clio server. clio only serves validated data. If you want to talk to rippled, include 'ledger_index':'current' in your request"
    }
  ]
}

This causes an issue when loading the data using the Memo class.

What issue, specifically, does this cause?

While parsing all transactions from the rippled using xrpl-py, an error occurred for the above transaction_hash data because it lacks any of the three fields. If xrpl-py is not intended to provide a model for robust data parsing or is not concerned with full backward compatibility, then it's not a critical issue.
I just wanted to clarify..

@mvadari  you are right. rippled introduces a rigorous check only on 21 January, 2015: https://github.com/XRPLF/rippled/blob/69143d71f8973e33b701d7becc19da2ad6a68b68/src/ripple/protocol/impl/STTx.cpp#L479
This might be a hindrance if somebody wants to work with historical data, using xrpl-py. In the spirit of backwards compatibility, I'd prefer to remove this check.

Even if xrpl-py removes this check, rippled still performs the same check and throws the appropriate errors. We wouldn't be compromising the functionality anyway.

The Memo model will break regardless, because the TransactionMetadata field doesn't exist on the class. Removing that check wouldn't fix anything.
I would rather have the library be easier to use for folks processing modern-day data/creating modern-day transactions than support a few minor edge cases from 10 years ago.
If you're just looking to deserialize data or something, you can do that by using the binary codec directly and skipping the models. The models aren't strictly necessary.

hmm, I see. I wasn't aware that you could use the binary-codec directly. I misunderstood that there's no way to decode the historical data.

Closing as you can still decode old transactions via using the binary codec directly, and it doesn't make sense to add support to the models for this.

Will use binary codec. Thanks a lot!

authors: ckeshava intelliot jungsooyun mvadari

repo: XRPLF/xrpl-py

license: ISC


text:
Refactor periodic boundaries

Context for changes
< Describe your changes. Make sure to include a summarized description of the changes and fixed issues in the format below consistent with CHANGELOG.md. You cannot place N/A here. >

New features:

<  text goes here >
<  text goes here >

Bug fixes:

<  text goes here >
<  text goes here >

Improvements:

<  text goes here >
<  text goes here >

Documentation changes:

<  text goes here >
<  text goes here >

Example usage and tests
< Add some example usage and tests showing how to utilize new features and fixes; otherwise, mark N/A below. >

[ ] Not Applicable

Performance results justifying changes
< If you have improved a feature you should support it with some benchmarking and scaling results, plots, etc.; otherwise, mark N/A below. >

[ ] Not Applicable

Workflow actions and tests
< In most cases, we need a set of unit tests that automatically and comprehensively test for newly added features. Discuss existing CI tests that cover the changes or any updates to the workflow here; otherwise, mark N/A below. >

[ ] Not Applicable

Expected benefits and drawbacks
< Summarize your justifications for the change and its benefits. Is there any drawback that exists today with the changes or may occur in the future? You cannot place N/A here. >
Expected benefits:

< text goes here >

Possible drawbacks:

< text goes here >

Related Github issues
Closes #52
Checklist and integration statements

[ ] My Python and C++ codes follow this project's coding and commenting styles as indicated by existing files. Precisely, the changes conform to given black, docformatter and pylint configurations.

[ ] I have performed a self-review of these changes, checked my code (including for codefactor compliance), and corrected misspellings to the best of my capacity. I have synced this branch with others as required.

[ ] I have added context for corresponding changes in documentation and README.md as needed.

[ ] I have added new workflow CI tests for corresponding changes, ensuring codecoverage is 95% or better, and these pass locally for me.

[ ] I have updated CHANGELOG.md following the template. I recognize that the developers may revisit CHANGELOG.md and the versioning, and create a Special Release including my changes.

Hey @ilan-tz I was just going over this PR trying to understand it. Wouldn't it be useful to also allow for one periodic axis? That case seems to be (physically) more relevant to me.

Hey @ilan-tz I was just going over this PR trying to understand it. Wouldn't it be useful to also allow for one periodic axis? That case seems to be (physically) more relevant to me.

We could do this. The top priority is periodic in x & y and finite in z because it's a more natural boundary choice (equating to toric code evolved in time) that what we currently have. For full flexibility we could also include periodic in just one of x or y -- @sduquemesa do you think it would be reasonable to include in this PR?
As for what's physically relevant -- if your hardware has the capability of creating a code with periodic boundaries in one dimension (e.g. via long-range interaction) then it can probably do it in the other as well!

Hi @ilan-tz and @soosub! Please go ahead and give a first round of review to this PR, I'd appreciate your thorough examination. If the logic currently used here is good, we can implement periodicity in just one of the x or y axes. Thanks!

I'll have a look today 👍🏼

Just a note that the combination of ec='primal' and boundaries='dual' and the converse (ec='dual' and boundaries='primal') result in a KeyError. I discussed this with Ilan and it should not work (so that's good 😃), but maybe it would be good to throw a more interpretable warning.
Here is the whole Traceback:
KeyError                                  Traceback (most recent call last)
Input In [18], in <cell line: 2>()
      1 d, ec, boundary = (2, None, 'primal')
----> 2 c = SurfaceCode(d, ec=ec, boundaries=boundary)

File ~\flamingpy\flamingpy\codes\surface_code.py:315, in SurfaceCode.__init__(self, distance, ec, boundaries, polarity, backend)
    312 self.graph.index_generator()
    313 # The following line defines the stabilizer, syndrome coordinate,
    314 # and syndrome index attributes.
--> 315 self.identify_stabilizers()
    316 # The following line defines the boundary points attribute.
    317 self.identify_boundary()

File ~\flamingpy\flamingpy\codes\surface_code.py:357, in SurfaceCode.identify_stabilizers(self)
    354 all_six_bodies = self.generate_stabilizer_coords()
    356 # set {ec}_syndrome_coords, {ec}_syndrome_inds, and {ec}_stabilizers
--> 357 self.set_ec_stabilizers_and_syndrome(all_six_bodies)
    359 # set `all_syndrome_inds` and `all_syndrome_coords`
    360 for att in ["_syndrome_inds", "_syndrome_coords"]:

File ~\flamingpy\flamingpy\codes\surface_code.py:381, in SurfaceCode.set_ec_stabilizers_and_syndrome(self, all_six_bodies)
    379 all_cubes = []
    380 syndrome_coords = []
--> 381 for stabe in all_six_bodies[ec]:
    382     actual_stabe = list(set(stabe).intersection(rhg_lattice))
    383     # Dealing with stabilizers at periodic boundaries

KeyError: None

authors: ilan-tz sduquemesa soosub

repo: XanaduAI/flamingpy


text:
Why my generated images are black.

The images are pure black. And it always stops at 39 or 47 eopchs.

@Happzy-WHU
Maybe this can help for the fact that images are black: https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Troubleshooting#green-or-black-screen

I tried all methods I can search from the internet, such as adding SD command line arguments, downgrading xformers, remove xformers, and reinstall SD webgui and reooting systems etc, the dreambooth training always genereate black image samples. I am using nvidia A40 + cuda 11.8.
I gave up.

Video cards Certain GPU video cards don't support half precision，set --precision to full ，problem will be solved！

authors: Happzy-WHU Raphilanthrope jtTATannn sweihub

repo: XavierXiao/Dreambooth-Stable-Diffusion


text:
Scorecard - Not copied by mastercontroller when in subdirectory

All property files support subdirectories. The scorecard feature does support that too (reading) but it appears that the MC cannot deal with a definition file in a subdirectory within config when preparing the final results.

Well, it seems that XLT copies only files at 1st level below config plus those that are included using property includes. So, this is not related to the Scorecard feature but a general issue.

Don't we copy included properties with subdirs?
On Mon, 12 Aug 2024 at 18:19, h-arlt @.***> wrote:

Well, it seems that XLT copies only files at 1st level below config plus
those that are included using property includes. So, this is not related to
the Scorecard feature but a general issue.
—
Reply to this email directly, view it on GitHub
https://github.com/Xceptance/XLT/issues/521#issuecomment-2284400015, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AANV6QEDH3OST2GAL4T3ZW3ZRDOBTAVCNFSM6AAAAABML7BLNWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBUGQYDAMBRGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
René Schwietzke
CEO/Managing Director
Email: @.***
Phone: +49-3641-376-300
Mobile: +49-172-7986-359
Xceptance Software Technologies GmbH
Leutragraben 2-4
07743 Jena
Germany
Xceptance Software Technologies, Inc.
One Broadway
Cambridge, MA 02142
United States
Geschäftsführer: Roy Sarnoch, René Schwietzke
Sitz der Gesellschaft: Jena
Registergericht: Amtsgericht Jena
HRB-Nr.: 210087
www.xceptance.com

XLT copies only files at 1st level below config plus those that are included using property includes.

You have to include it explicitly when it resides in a sub-directory. Otherwise, it won't be copied (although users might expect it to be).
Assume for example, users store their load test profiles in a sub-directory named 'profiles'. Then, only the currently active load test profile as configured by property com.xceptance.xlt.testPropertiesFile will be copied but not the others. Whether or not this is expected depends on the point of view. As long as the other files are not part of the effective load test configuration, they don't have to be copied. Nevertheless, they are part of the overall load test configuration and may be copied as well.
Regarding scorecard configuration files, they are no properties files and thus cannot be included. So, the copy-when-included path is not applicable for them. As a consequence, scorecard definition files have to be located at first level below config in order to get copied. So far for the explanation of the current state.
Question now is: how do we want to proceed from here? Do we want to handle scorecard definition files somewhat specifically? Or, do we want to rethink the current approach (e.g. copy all files inside of config directory that match a certain file filter instead of those at 1st level only)?

authors: h-arlt rschwietzke

repo: Xceptance/XLT


text:
Extending Spegel to non k8s clusters

Hey, I really love the simple implementation of this service, I am looking for something to back GCR / AR registries without the operational overhead of running redis and postgres and I think Spegel is exactly what I am looking for!
I'd like to extend this to non kubernetes docker clusters, would you be open to adding functionality so that Spegel can be bootstrapped without kubernetes? I had a quick look over the source code and could only see the need for kubernetes in the bootstrapping section. If I do the leg work would you be interested in working with me to integrate Consul based bootstrapping into Spegel?

We will be adding more bootstrappers as part of the work to integrate with k3s, which means that in theory it should be possible. Are you planning on using the KV store in Consul to share the public key?
Depending on how your container platform is designed it might be more interesting for you to import Spegel as a library in the same way that k3s will?

I only briefly looked at the kubernetes bootstrapping code so I may be being naive here. I was thinking a similar leader election process would work with Consul as the KV backend for locking and choosing the initial leader. I'm using Nomad and Consul, so was looking to run Spegel as a system job on Nomad to handle caching and sharing existing docker images across nodes.
I did see some mention of Spegel in k3s the other day, but didn't dive into the implementation deteails. Given that you say it will be embedded as a library it probably wouldn't be right for me unless Hashicorp were to accept it into their project.

We will be adding more bootstrappers as part of the work to integrate with k3s

What bootstrapping methods are you planning for the k3s integration?

I am back from the holidays now so should be a bit faster to respond.
I think that adding support for Nomad would be great to expand the user base. It has been a while since I have used Nomad so had a look at the different container drivers out there.

https://github.com/hashicorp/nomad-driver-podman
https://github.com/Roblox/nomad-driver-containerd

Before we dive into looking at bootstrappers we need to verify that one of these drivers will work with Spegel. The main issue is that Spegel relies on CRI for the mirror configuration to work. Check how Containerd implements its CRI server.
https://github.com/containerd/containerd/blob/c98cb4af223348b78fc3b8c09762bc79983670b0/pkg/cri/server/images/image_pull.go#L132-L135
The Containerd driver does not implement any support for CRI mirror configuration.
https://github.com/Roblox/nomad-driver-containerd/blob/15d14253688c1d5c349c26c1ba407d7e7831bd5d/containerd/containerd.go#L96-L116
It looks like this is also the case with the podman driver.
https://github.com/hashicorp/nomad-driver-podman/blob/89d6a0bde7cd3dd64beb715ad9ebc031ff93b793/api/image_pull.go#L18-L70
@stenh0use have i missed some driver that you are using? I think we need to prove that Spegel will work on your Nomad setup before looking more at how to bootstrap Spegel.

Yeah sane thought process there, I'm using the builtin docker driver. The driver interfaces with dockerd and my assumption that it would work was based on dockerd using containerd as the runtime. This assumption seems to be wrong as I have since found that dockerd has only migrated to containerd and is not using the image store.
So after looking through dockerd today I'm not sure how confident I am that Spegel will just work, although it looks like v24 implemented experimental support for enabling containerd as the image store.
https://github.com/moby/moby/issues/38043
There are still 20 outstanding issues attached to this issue for "fix remaining failing tests with the containerd image store" so hopefully it's not too far away from graduating from experimental to supported.

Oh there is a third driver, how did i miss the built in driver?
I had a look at how docker does registry mirroring, and it is limited. Configuring the Docker daemon is simple enough, and just requires a restart of the daemon. The problem is that this will first of all mirror all image pulls, meaning it will not be possible to exclude registries. Second of all Docker does not include any reference to the original registry in its requests, which makes resolving tags impossible.
https://docs.docker.com/docker-hub/mirror/#configure-the-docker-daemon
I am a bit stuck right now. We need to figure out how to enable tag resolving for Docker. Spegel would work on Nomad with the Docker driver if we figure that out.

There are still 20 outstanding issues attached to this issue for "fix remaining failing tests with the containerd image store" so hopefully it's not too far away from graduating from experimental to supported.

The only remaining issues are for the (somewhat deprecated) classic builder, and these issues are the cache not working, but the build works. I guess what I'm saying is, give this a try, tell us if something breaks :)
Here's how to enable the containerd image store feature https://docs.docker.com/storage/containerd/

@rumpl thanks for the input, I am unsure if using Containerd image store would solve this problem. Spegel relies on Containerds CRI implementation to supporting registry mirroring. Using another Snapshotter would not solve this problem as the image would still be pulled using the Docker implementation.

Check how Containerd implements its CRI server.
https://github.com/containerd/containerd/blob/c98cb4af223348b78fc3b8c09762bc79983670b0/pkg/cri/server/images/image_pull.go#L132-L135

I looked at the docker source code and It looks like it is using a different ImageService when containerd-snapshotter is set. The image pull resolver is defined how you linked to in the containerd source code.
https://github.com/moby/moby/blob/master/daemon/daemon.go#L1089-L1097
https://github.com/moby/moby/blob/master/daemon/containerd/image_pull.go#L70
https://github.com/moby/moby/blob/master/daemon/containerd/resolver.go#L28-L32
Although I'm not entirely sure if this solves the problem?

Good news, after a lot of tinkering and going through code I think I have figured it out. Using the Containerd snapshotter together with configuring the mirror in /etc/docker/daemon.json results in a HTTP request identical to one received when pulling using Containerd. The only downside with using Docker is that it is not possible to limit mirroring of only specific registries, but that is more on Docker than it is on Spegel.
I think we should be able to move forward with this feature. The next step is to determine the best method of running Spegel in Nomad. The simplest should be to run it in a Docker container.

Great news and thanks for tinkering! I think I'm ok with the downside that it's not possible to limit the mirroring of specific registries so long as it can mirror gcp gcr/ar registries.
The best way to run it I would think is in a Docker container as system job, it's similar to a DaemonSet.

I need to setup a test Nomad cluster to see how networking works, among other things. After that I should be able to figure out how bootstrapping should look like.

Can I help you some how? I was thinking either host or bridge network would work with a static port as a system job, similar to how you've done it in kubernetes. The metrics port can be dynamic and registered as a service in consul for prometheus service discovery.
https://developer.hashicorp.com/nomad/docs/job-specification/network#mode
https://developer.hashicorp.com/nomad/docs/schedulers#system
I have a WIP for hashistack in docker: https://github.com/stenh0use/hind
I have locally updated the docker-ce version and was able to get containerd-snapshotter working for docker pull, but docker run was having problems mounting volumes in my dind setup (I need to figure that out). I can clean that up today and push it if that is helpful?
root@9ecd8301374e:/# ctr --namespace moby images ls
REF                                  TYPE                                    DIGEST                                                                  SIZE     PLATFORMS                                                                                LABELS
docker.io/library/hello-world:latest application/vnd.oci.image.index.v1+json sha256:ac69084025c660510933cca701f615283cdbb3aa0963188770b54c31c8962493 12.7 KiB linux/386,linux/amd64,linux/arm/v5,linux/arm/v7,linux/arm64/v8,linux/mips64le,linux/ppc64le,linux/riscv64,linux/s390x,unknown/unknown,windows/amd64 -
docker.io/library/redis:7            application/vnd.oci.image.index.v1+json sha256:a7cee7c8178ff9b5297cb109e6240f5072cdaaafd775ce6b586c3c704b06458e 49.0 MiB linux/386,linux/amd64,linux/arm/v5,linux/arm/v7,linux/arm64/v8,linux/mips64le,linux/ppc64le,linux/s390x,unknown/unknown
root@9ecd8301374e:/# docker image ls
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    ac69084025c6   43 hours ago   24.4kB
redis         7         a7cee7c8178f   43 hours ago   204MB

In its current state If you run make build and then make run on my project you should have yourself a test cluster in docker.
I'll update the topic of this issue as we are talking about specifically docker and nomad.

If I can help don’t hesitate to ping me, I can either help or delegate internally :)

@stenh0use a lot has changed in Nomad since the last time I touched it, a lot for the better. I was thinking if we even need Consul to make bootstrapping work? Could we not instead use the nomadService template command together with a static rendevouz hash. That would mean that the same IPs would be returned for all of the instances of Spegel. If I understand things correctly the environment variable should update when the template value updates. Is this statement correct?
https://developer.hashicorp.com/nomad/docs/job-specification/template?_gl=1*121w2wu*_ga*MTIyODA5MzYxMy4xNzA0NDQ4Njgx*_ga_P7S46ZYEKW*MTcwNDc0NTkwNS4xLjEuMTcwNDc0ODU4Ni40My4wLjA.#simple-load-balancing-with-nomad-services
Then as you stated using a static port for the registry should be fine for the mirror to work.

I was thinking the same thing over the weekend. I do not think we should involve Consul, if we need Consul kv type functionality Nomad implemented this a few releases ago.
https://developer.hashicorp.com/nomad/api-docs/variables/variables
https://developer.hashicorp.com/nomad/api-docs/variables/locks
Nomad can inject variables into the config templates about information about the deployment. I wasn't sure if that would work as I thought in the kubernetes bootstrap code it was doing a leader election using distributed lock via leaderelection.LeaderElectionConfig.
If Spegel only needs an initial list of IPs to create the cluster and it handles all of the leader election itself then we might not need to complicate a nomad deployment leader election.
otherwise I was looking at something like this:
https://github.com/razorpay/metro/blob/5eb8881adbf5da6d387d1f4659916c83028dfb06/pkg/leaderelection/candidate.go#L56
https://engineering.razorpay.com/leader-election-using-consul-and-golang-73580fb14463

Ok good to know about the Leader election we can definitely pass in any the same node address on startup. I'm wondering how would bootstrapping work when a new node joins the cluster or a node fails? Can it then join the cluster based on any other node address? Given the statelessness I guess if we get into a split cluster situation we can always stop and restart the job.
That is annoying about hind, what is the error you are getting, and what environment are you running it in? I will look into fixing it. I have only tested hind on my laptop which is x86 Macbook using colima 0.6.x, it also requires the docker host to be using cgroupv2.

I have a working Nomad cluster running with Vagrant now, and managed to get Spegel running without a bootstrap. My plan is to create a draft PR with the instructions and then you can have a look at it and give feedback. Would that work for you?

Thank you so much @phillebaba! Plan sounds great with the draft PR, let me know once you have that and I'll take a look.

Is there any documentation or a rough guide of how you set this up to help with dind?
My use case is that I have pods that spin up a container with a dind sidecar to allow docker commands to execute in the main container
Any time it has to pull an image the sidecar is new so it is pulling it direct from the web, even though the image may already be on the kubernetes node itself or on another node
Is this something that spegel can help with based on the above improvements?

@phillebaba thanks for the updates here. Apologies, life has got in the way and I'm yet to test the new changes. I made a rough nomad job file to get this working a while back based off the helm chart, but need more time to incorporate the changes.

@RoryDoherty you might be better off creating a new issue. Your architecture and where the image is meant to live would need to be understood in order to answer that question.

So I tested this out on Nomad, I wasn't able to get it working using bridge networking, but I was able to get it working using host networking.
This is due to container IP address being advertised from the bootstrap server for the router to connect to. As everything is running on private addresses the peer routers can't be reached. This wouldn't be so much of a problem with overlay networking like calico and cilium. Alternatively, an option to configure an "advertised" address as well as the listen address might work? For now I think host networking should get the job done.
When using bridge network
docker exec -it hind.nomad.client.01 curl http://192.168.32.4:30738/id
/ip4/172.17.0.2/tcp/5001/p2p/12D3KooWNnh9pmRkPdYHTpDCKEQgczy2EodxSMQ6ystwJuG1eDPb

When using host network
docker exec -it hind.nomad.client.01 curl http://192.168.32.4:22143/id
/ip4/192.168.32.4/tcp/5001/p2p/12D3KooWPGnsCBBAsMNkW9Nr1idF7irR7sDtktMyv22hyR27PZao

I need to clean up my wip, but will post back here once I have a good reference. I mostly copied the helm chart but I'm still a little unsure as to how the "service" address would work in Nomad, and also what significance the "local" address has/should be configured.
For a load-balanced "service" address, consul DNS would work well, but unfortunately, you can't register a nomad job as both a consul service and a nomad service. So to do the nomadService rendevous hashing for the bootstrap node selection nomad service discovery has to be used.

Update here:
I created a repo nomad-docker with my work. It includes 3 options for leader election, nomadService with rendevous hashing, nomad kv locking and consul kv locking, and options to use nomad or consul as a service discovery backend.
After doing a lot of testing I found nomadService rendevous hashing more flakey than using nomad/consul kv locking. However I think I managed to get it to a stable state after adding multiple services/ports to the same service name in nomad. Originally I had each interface as a separate service (spegel-<service>), but it caused allocations to drop in and out which meant the bootstrap addr in the template kept flapping signaling to the registry to restart frequently.
The kv/locking with consul/nomad binary works well, but perhaps it might be nice integrate the consul/nomad kv functionality as an alternative bootstrapper at a later stage. For now what I have seems to work well.
I do have some follow up questions / issues that I wasn't able to figure out.

how does leadership work within the cluster after startup?

Once the cluster is established does the cluster maintain leadership via gossip or does the bootstrap/id as something that only can be updated on startup? eg. if the cluster already exists can a peer bootstrap with any member of the cluster? I ask this as I am restarting all registries and forcing a new bootstrap process everytime the leadership changes. The benifit of this at least means that the cluster will never have split rings in the event nodes bootstrapped with different sets of hosts.

local address "--local-addr=192.168.112.4:25565" "--local-addr=:25565"doesn't listen, or at least in my testing I couldn't get it to listen.

Click to expand logs
curl -v 192.168.112.4:25565
*   Trying 192.168.112.4:25565...
* connect to 192.168.112.4 port 25565 failed: Connection refused
* Failed to connect to 192.168.112.4 port 25565: Connection refused
* Closing connection 0
curl: (7) Failed to connect to 192.168.112.4 port 25565: Connection refused

as commented above, host networking or an overlay network needs to be used due to the way the bootstrap/router ip is advertised.

Not really a question, just a statement about docker support: It looks like docker doesn't support mirroring registries other than docker.io. I need to dig further into that, but I think I recall reading about that a while ago. I was able to confirm the issue by using nerdctl vs docker cli. The nomad logs received the same error as the docker cli.

Click to expand logs
# with an image on node 1 - internet disconnected (from node 3)
# Fails with docker

root@hind:/# docker pull ghcr.io/curl/curl-container/curl-dev-debian:master
Error response from daemon: failed to resolve reference "ghcr.io/curl/curl-container/curl-dev-debian:master": failed to do request: Head "https://ghcr.io/v2/curl/curl-container/curl-dev-debian/manifests/master": dial tcp: lookup ghcr.io on 127.0.0.53:53: no such host

# Succeeds with nerdctl
root@hind:/# ./nerdctl --namespace moby pull ghcr.io/curl/curl-container/curl-dev-debian:master
ghcr.io/curl/curl-container/curl-dev-debian:master:                               resolved       |++++++++++++++++++++++++++++++++++++++|
manifest-sha256:017b38c8c1774a8936c36738831733c82ac7b92756392c08b55312aac1b78ffd: waiting        |--------------------------------------|
config-sha256:e3c3e70745d5baf55edd5eabad6620ad7f3a77fa3410409b2f0e595a80e7c3fe:   done           |++++++++++++++++++++++++++++++++++++++|
layer-sha256:c2df7039d217246c2c69539feca226b0ab648b50b3534ac17db3627ca6ea3a2a:    downloading    |+++++++++++++++++++++++++++++---------| 244.0 Mi/318.6 MiB
layer-sha256:a6b88e165427e35f2ed91be78903ee4426fbdb43238695e405e4ce85bb93aaf7:    done           |++++++++++++++++++++++++++++++++++++++|
elapsed: 39.9s                                                                    total:  292.8  (7.3 MiB/s)

# with an docker hum image on node 1 - internet disconnected (from node 3)
root@hind:/# docker pull redis:7
7: Pulling from library/redis
c16c264be546: Download complete
cb9709829e8b: Download complete
214d0afb35ca: Download complete
16a9d12e7a2c: Download complete
f7ebca356832: Download complete
00e912971fa2: Download complete
4f4fb700ef54: Already exists
Digest: sha256:f14f42fc7e824b93c0e2fe3cdf42f68197ee0311c3d2e0235be37480b2e208e6
Status: Downloaded newer image for redis:7
docker.io/library/redis:7

@rumpl do you know if there are any plans to fix this issue https://github.com/moby/moby/issues/18818 as part of the containerd snapshotter work? I was able to pull non dockerhub images via spegel using nerdctl but but not with the docker daemon/cli.

After reading a bunch of PRs/issues on the moby page, it doesn't look like the mirror issue ever progressed/doesn't look like the feature is on the cards given the age of the above issue (unless @rumpl can provide any insights or updates there?).
The good news is though it's fairly straightforward to update the dockerd code to support private registry mirrors. I compiled a custom dockerd binary tonight with a change to support ghcr.io and was able to pull non dockerhub images through spegel. I'm not super thrilled about having to patch every release, hopefully either moby can deliver on the feature or the containerd plugin for nomad gets new gets new maintainership.
https://github.com/Roblox/nomad-driver-containerd/issues/167

@phillebaba I saw the other issue recently opened #672. I did get Spegel working with nomad and dockerd. By default it only works with docker.io, but with as little as a one line change you can recompile dockerd to support Spegel in conjunction with the containerd snapshotter.
Is there something I can do to help you there?
Here is all the nomad work I did - https://github.com/stenh0use/nomad-spegel
If anyone has any questions I’d be more than happy to help.

This looks really good @stenh0use. One option is to add a link to your documentation to make things easier for others to find. I am a bit hesitant adding it to the official documentation without tests to validate that things will continue to work with Nomad. Maybe that is something that we can have in the future.

authors: RoryDoherty phillebaba rumpl stenh0use

repo: XenitAB/spegel


text:
模型加载失败。。

我成功编译出apk ,并将模型放置于src/main/asserts/stable_diffusion/qnn_model_8550下，但是我运行的apk的时候出现模型加载失败？请问这是什么原因导致的。我已经严格按照readme设置了。

请问你解决了没有，我也遇到了相同的问题，提示模型加载失败

我成功编译出apk ,并将模型放置于src/main/asserts/stable_diffusion/qnn_model_8550下，但是我运行的apk的时候出现模型加载失败？请问这是什么原因导致的。我已经严格按照readme设置了。

我也遇到了相同的问题，请问你有解决这个问题吗？

是否已经按照https://github.com/XiaoMi/StableDiffusionOnDevice/issues/8更换最新SDK

是否已经按照 #8 更换了最新SDK

不好意思，这么迟才回复您，，该问题已经解决了。

是否已经按照 #8 更换了最新SDK

不好意思，这么迟才回复您，，该问题已经解决了。

请问您是怎么解决的，可以给个说明吗，我也遇到了同样的问题

repo: XiaoMi/StableDiffusionOnDevice


text:
mace会考虑支持nnapi吗？

mace后期会考虑增加支持nnapi吗？

暂时没有相关计划，以后可能会考虑，谢谢

repo: XiaoMi/mace