refetch not work after queryCache.setQueryData

const fetchJson = async function (...args) {
  const res = await fetch(...args);
  return res.json();
};

const MyComponent = () => {
  const processesKey = ['processes'];

  const { data, isFetching, refetch } = useQuery(processesKey, () => (
    fetchJson('/api/process-instances', {
      method: 'POST',
      body: JSON.stringify({
        sort: 'created',
      }),
      headers: {
        'Content-Type': 'application/json',
      },
    })
  ));

  const items = data ? data.data : [];

  const updateItem = (itemId, updateData) => {
    queryCache.setQueryData(processesKey, (prev) => ({
      ...prev,
      data: prev.data.map((item) => {
        if (item.id === itemId) {
          return {
            ...item,
            ...updateData,
          };
        }
        return item;
      }),
    }));
  };

  /**
   * Load status of each item
   */
  items.forEach(async (item) => {
    if (item.loading) {
      return;
    }

    // refetch works
    updateItem(item.id, { loading: true });
    // refetch works too

    const resp = await fetchJson(withQuery('/api/tasks', {
      processId: item.id,
    }));

    let status = '-';

    if (resp.data && resp.data.length) {
      status = resp.data[0].name;
    }

    // refetch can work until the follow updateItem.
    // refetch works
    updateItem(item.id, {
      status,
      loading: false,
    });
    // refetch not work
  });

  const columns = [
    {
      title: 'NAME',
      dataIndex: 'name',
    },
  ];

  return (

      <Button icon={<ResetIcon />} loading={isFetching} onClick={refetch} />

  );
};

export default MyComponent;

Please post a codesandbox example so we can replicate this issue easier.

@tannerlinsley
https://codesandbox.io/s/boring-golick-0zc8u

It seems that v1.0.26 fix the issue.  but I can't find a tag named 1.0.26

The tag is now published :)

Hi @tannerlinsley , thank you for the library!
I don't have much experience with it yet, so I may be wrong, but I think the issue is still present in v1.0.28.
sandbox:
https://codesandbox.io/s/determined-liskov-7c55s
If refetch is called after updating cache, query is not executed. If the order is switched, query is executed:
updateCache();
refetch(); // <- query not executed

vs
refetch(); // <- query is executed
updateCache();

Are you waiting for the stale timeout to pass?

I think I do - fetch function is a 1 second timeout, default stale time is 0, so if I wait for 1 second between calls I should see query executed again. However, I only see it executed in one of the cases - when refetch is called before cache update.


Change \xLongequal to \xlongequal

Fix a spelling mistake from PR #670.

I noticed it while looking at the test page. The test page, by the way, is looking much better these days.


fix: libsodium import error with sumo version

fix #181

Need people with NovelAI account to test this PR before merging it.

how?

how?

Assuming you are using the koishi-boilerplate as the development environment:

Clone novelai-bot repo locally:

$ git clone https://github.com/koishijs/novelai-bot.git ./external/novelai-bot

Set branch to the current PR

$ git -C ./external/novelai-bot checkout fix/use-libsodium-sumo

Install dependencies and build

$ yarn && yarn build

Run Koishi in development mode

$ yarn dev

You can learn more in Koishi Official Website

2023-04-12 21:06:58 [I] app apply plugin novelai:3el8u1
2023-04-12 21:06:58 [E] app cannot resolve plugin "novelai

sorry 怎么继续修复


Landing notice privacy statement is hardcoded to "https://canbewell-uottawa.web.app/" instead of serving from public folder

With the current code, we cannot test the potentially updated privacy statement until we deploy to prod which is bad.
But the functionality should work regardless

please double-check this with the prof before doing it


LOG4J-3215 Update the documentation instructions on using Log4j in a Gradle build

See Log4j 3215 for more details.
Please, have a look at the changes in src/changes/changes.xml I've failed to find out instructions on how to update this file properly :)

Thanks so much @quapka! Applied your changes to both release-2.x and master.

This was closed automatically by Github because we renamed the release-2.x branch to 2.x. Feel free to resubmit to the 2.x branch.

Does it need reraising? It sounds like it may already be on those branches?

@jamietanna,
Sorry, I didn't notice that Volkan already merged it (without merging the PR).

No worries, appreciate you checking!


Standard Prometheus alerts for v1

We need to define:

[ ] What alerts we need to create in the alert.rules for standard components.
[ ] The syntax of how to implement them.

[ ] Component down (router, publisher, etc..)
[ ] Host memory consumption
[ ] Increase of 15 minute load avg (and probably 1 and 5 minute)
[ ] Low disk space (10% remaining, 5% remaining)
[ ] Increase in the 95 percentile of response times for requests
[ ] Above average errors rates from the router (# of 400s / # of requests)


RESN values unclear

The way that RESN is used is not clear. In particular what is the practical difference between PRIVACY and CONFIDENTIAL? If something is marked PRIVACY, is it also CONFIDENTIAL (or vice-versa)? Or are they completely independent like LOCKED?
I'm assuming programs exporting files should give the option whether to write records with PRIVACY and/or CONFIDENTIAL restrictions?

n particular what is the practical difference between PRIVACY and CONFIDENTIAL?

In my (web-based) application:

PRIVACY means the data is hidden from visitors to the website
CONFIDENTIAL means that the data is also hidden from logged-in members of the website (i.e. admin only)
LOCKED means that regular website users cannot edit this data (admin only)

If something is marked PRIVACY, is it also CONFIDENTIAL (or vice-versa)?

I treat CONFIDENTIAL as "more private" than PRIVACY.  So CONFIDENTIAL implies PRIVACY, but not vice-versa.
A record can have only one of these two restrictions.
LOCKED is independent from the others.

I'm assuming programs exporting files should give the option whether to write records with PRIVACY and/or CONFIDENTIAL restrictions?

Mine does.  The export can apply these privacy filters when creating a GEDCOM file.  So you can export the full file, or a public subset of it.

When we polled applications when developing 7.0 we found some that interpreted them like @fisharebest explains and others that interpreted them as independent, allowing users to decide if they want to export data that is marked PRIVACY and separately decide if they want to export data that is CONFIDENTIAL. Because of that we didn't know how to clarify their meaning in the specification.
5.5.1 had these longer descriptions:

value
meaning

confidential
This data was marked as confidential by the user. In some systems data marked as confidential will be treated differently, for example, there might be an option that would stop confidential data from appearing on printed reports or would prevent that information from being exported.

locked
Some records in Ancestral File have been satisfactorily proven by evidence, but because of source conflicts or incorrect traditions, there are repeated attempts to change this record. By arrangement, the Ancestral File Custodian can lock a record so that it cannot be changed without an agreement from the person assigned as the steward of such a record. The assigned steward is either the submitter listed for the record or Family History Support when no submitter is listed.

privacy
Indicate that information concerning this record is not present due to rights of or an approved request for privacy. For example, data from requested downloads of the Ancestral File may have individuals marked with ‘privacy’ if they are assumed living, that is they were born within the last 110 years and there isn’t a death date. In certain cases family records may also be marked with the RESN tag of privacy if either individual acting in the role of HUSB or WIFE is assumed living.

It wasn't clear to me that the longer text added any clarity: it defines privacy by example of how one application assigns it and confidential by example of two tasks that might be changed based on its presence. I'm not confident there is consensus on how the two are related

One of the main things I glean from that extra information is that PRIVACY indicates that some information has already been redacted.
Data privacy is a topic which has surged in importance in recent years. Whilst there aren't any international standards to fall back on that I know of, it does suggest that this area probably needs a bit more attention.

Noting your comments on the pull request, I think it's a good thing being able to explicitly mark records as sensitive, and would be sad to see RESN deprecated.

"RESN privacy" and "RESN confidential" should be deprecated since there are already multiple incompatible meanings deployed.  Agreed that there is a need to mark things as sensitive.  We could do so either by defining a new tag, or simply by defining new values with the existing RESN tag.

I think the easiest would be to depreciate PRIVACY and recommend using CONFIDENTIAL instead. Although the difference between the two varies, I'm not aware of differences in how people use CONFIDENTIAL itself; the variation seems to be in PRIVACY.

I think the easiest would be to depreciate PRIVACY and recommend using CONFIDENTIAL instead. Although the difference between the two varies, I'm not aware of differences in how people use CONFIDENTIAL itself; the variation seems to be in PRIVACY.

I would disagree that there is no difference between PRIVACY and CONFIDENTIAL.
CONFIDENTIAL by definition is user/data entry person based, they may not want others in a shared environment to see a particular fact/event or an individual due to some personal or family controversy or situation.  A birth name, person born out of wedlock, or an untested person could be an example.
PRIVACY by definition has to due with not allowing an individual to be named or seen.  GEDCOM says “ if they are assumed living, that is they were born within the last 110 years and there isn’t a death date.”. Some countries don’t even allow information for a person to be seen in public even if they are deceased for a set number of years.  In a shared environment this is important.

I would disagree that there is no difference between PRIVACY and CONFIDENTIAL.

I wasn't trying to say they are not different. CONFIDENTIAL has a consistent usage, but PRIVACY does not. We know of the following meanings for PRIVACY, all arguably in keeping with the 5.5.1 and 7.0 defining text:

Two tiers: CONFIDENTIAL is stricter than PRIVACY (e.g. https://github.com/FamilySearch/GEDCOM/issues/280#issuecomment-1436740280 above by @fisharebest)
CONFIDENTIAL is identified by the user; PRIVACY is determined by an algorithm (e.g. https://github.com/FamilySearch/GEDCOM/issues/280#issuecomment-1458393825 above by @Norwegian-Sardines)
CONFIDENTIAL indicates the data should not be shared; PRIVACY indicates some data has been removed (e.g. https://github.com/FamilySearch/GEDCOM/issues/280#issuecomment-1438758391 above by @jl5000)

We could clarify to any one of these, but whichever we pick would be re-defining some current tool's usage and thus changing the meaning of existing data. I think the best we can do for now is note that PRIVACY has various meanings and add new unambiguous tags in the future. For example, we might add something like

RESN HIDE indicates that the data should not be shown to any users
RESN FILTERED indicates that some data has been removed as part of RESN-aware export
RESN POLICY indicates that by some policy (perhaps described in subordinate NOTE or TYPE?) the data should not be shared publicly even if the owning user wants it to be

I'm not saying those are the right tags or right definitions, but I am saying they are different and that lumping them all under PRIVACY is problematic.

Ok, my bad I misunderstood your statement.
I would definitely agree that:

we need at minimum 2 states of display control
the current values are not self defining
we need some state that control “update ability”

I like the idea that data can be locked to update.  In a shared environment two data entry people could be at odds about a piece of data or a relationship.  By group decision the data/relationship can be locked to prevent changing or indicating to the receiver that some decision has been made.
Data should also have a set of states where it can be publish or seen by selected individual, or public.  These states would be defined and used both in shared environments and when data is transmitted via GEDCOM. This could be as indicated either hidden from all users (HIDE), or hidden from the public (POLICY).  The FILTERED confuses me! On export it would indicate the data was filtered out, but if you imbed it in a GEDCOM for let’s say the birth info would the GEDCOM look like this:
1 BIRT
2 RESN FILTERED
For adoption:
1 ADOP
2 RESN FILTERED
This could give the receiver of the GEDCOM an indication the individual was adopted just without the data.  This could be a breach of the intent of filtering out the data!  I’d rather “hide” the data!

The FILTERED confuses me!

I don't use anything like FILTERED myself, but could imagine it being useful to assist in collaboration. If I send a file to my cousin, then get it back where some details about one of our ancestors are missing but there's a RESN FILTERED in that ancestor's INDI record, I would be more likely to assume the omission was based on privacy, not based on my cousin disagreeing with the data and removing it as inaccurate.
That said, the reason I included it at all was not because I think it is particularly useful but because it is a reasonable reading of what the 5.5.1 spec intended for PRIVACY, and hence may be something that PRIVACY means in the wild.

The two use cases we have for the restriction structure is

to protect against accidental edits of data (we call this read-only)
to protect against accidental export of what the user defines as private data (we call this private)

When writing GEDCOM for the first case, we have used the RESN LOCKED.  For the second case, we had been using RESN PRIVACY but have now switched to RESN CONFIDENTIAL following the discussions here.  We assume that there is no restriction on the data unless a RESN is tag is present.   Of couse, with GEDCOM 7, we can export both restrctions at the same time, something we could not previously do using standard GEDCOM.  Our GEDCOM 5.5.1 writer, uses a custom tags to work round that limitation.
We consider three kinds of export:
1. Exports where the user wishes remove data based on a filter.
Owing to the large numbers of persons in users' trees, it is not reasonable to expect users to explicitly set a restriction on all persons.  Instead, we provide the option to use an algorithm to filter data of persons known or likely to be living, retaining their cross references to other individuals.
2. Exports where the user wishes to take action based on a restriction.
This scenario requires the specification to clearly define what the restriction value means.  It may also need to define the action that must be taken upon encountering that restriction during this type of export.
For example, wherever data would have a RESN CONFIDENTIAL or RESN PRIVACY, we currently offer the user one option: to completely remove this data from the export leaving no trace.  For GEDCOM exports, we do not use @VOID@ pointers for this type of data removal.  We consider that as a leak of information; a FAM record containing a CHIL @VOID@ could indicates that a person had a child, something that they may be confidential.  If the previously linked INDI record is marked RESN CONFIDENTIAL we would not export any CHIL payload for that in the associated FAM.
This is one possible and valid action to take.  Others would refer to the sections in the specifcation which discuss data removal and take a different view.  None the less there needs to be clear consensus on what actions should be taken for each restriction value.
3. Exports where the user simply wishes to transfer their data to another app or service, preserving restictions but not taking any action based on them.
Here we would not make any changes to the underlying data, and we essentially port the data to a different format, retaining the restriction values where that format supports the concept of restrictions.
Two other considerations in future designs
How should inheritance be handled?
There have been suggestions to add 'RESN' to several other structures including names and citations.  This quickly leads to questions about inheritance.  For instance this will mean that INDI can have BIRT, NAME, and all can have citations, each with a separate restrictions.  At the moment, we lock, or treat as confidential, any data item that has a 'parent' item marked locked, or confidential respectively.  This has the advantage of allowing a user to set one flag, most often on a person, and have their names, facts, and citations treated the same way without the user needing to manually tag each 'child' item.  However, I expect that others will have different ideas about how that should work.
What about conflicting restrictions?
Whilst the LOCKED and CONFIDENTIAL case works well as a list, if new values such as FILTERED, and HIDE enter the mix we start to get problems where the payload contains mutually incompatible values.

I can't speak for other applications, but in my own, LOCKED means that only a user with elevated privileges (e.g. a site administrator) can edit this record.
This behaviour is based on the original definition for this tag.

Some records in Ancestral File have been satisfactorily proven by evidence, but
because of source conflicts or incorrect traditions, there are repeated attempts to
change this record. By arrangement, the Ancestral File Custodian can lock a record so
that it cannot be changed without an agreement from the person assigned as the
steward of such a record. The assigned steward is either the submitter listed for the
record or Family History Support when no submitter is listed


[HR] Added Croatian language

updated the common.yaml file
added the first set of sentences to Croatian
leveraged the contribution of the Serbian language as our languages have quite some similarities

Please make sure that you include tests for newly added sentences.

Added tests for newly added sentences.

I pushed a few fixes to formatting/structure but the test suite found a few errors related to the language itself

I've used your translation and made some changes and fixed all test to pass, if you wish you can merge from my repo or finish PR and I will post mine later.

@spuljko do you want to push your changes now that this is merged?

@FlatBlack722 do you need some assistance? Let us know what it is so we can wrap this up. This is a really nice start and we're almost done with the review :)

@atus sorry guys for my absence. I really don't have time to finish this so perhaps you can take over. Sorry but it's quite busy at work the past days.

No problem. @spuljko you said you had done some work. Do you want to merge that in and take over?

No problem. @spuljko you said you had done some work. Do you want to merge that in and take over?

@atus PR #602


Overlay not drawn near the view edge when map orientation is set

Issue Type
[x] Question
[ ] Bug
[ ] Improvement
[ ] Build system related
[ ] Performance
[ ] Documentation
Description and/or steps/code to reproduce the problem
When map orientation is set to lets say 45 degrees the polyline overlay isn't drawn near the edges of the screen. Is there a way to fix this?
If it's a bug, version(s) of android this affects:
All
Version of osmdroid the issue relates to:
6.1.5

@nullApex It's surprising but not impossible given all the computations around the polylines.
I could not manage to reproduce this issue with the demo "More Samples / Drawing / Draw a polyline on screen".
Could you please create a little example that reproduces it, then provide us with the Polyline GeoPoint list, the map center, the map zoom level and the map orientation.

@monsieurtanuki Hi, sorry for the delay, here's a sample of the code (it's a mess, but it should be readable).
https://github.com/nullApex/mapTest

@nullApex Please just copy/paste the Polyline GeoPoint list, the map center, the map zoom level and the map orientation.

Hi, here's a set of polines https://pastebin.com/jKGWaxhb, map center [42.007305, 21.417469], zoom level 19, orientation 323.9

I managed to reproduce the bug with the following lines:
final List<GeoPoint> list = new ArrayList<>();
list.add(new GeoPoint(42.00643319705,21.41993811227));
list.add(new GeoPoint(42.00663595551,21.4196119));
list.add(new GeoPoint(42.00685516353962,21.41983022208606));
final Polyline polyline = new Polyline();
polyline.setPoints(list);
mMapView.getOverlays().add(polyline);
mMapView.post(new Runnable() {
	@Override
	public void run() {
		final BoundingBox boundingBox = BoundingBox.fromGeoPoints(list);
		mMapView.zoomToBoundingBox(boundingBox, false, 0);
	}
});

I had to zoom deeper, rotate the map, then see that the polyline disappeared in the map corner.
I think this is due to a recent change that "optimizes too much": in DefaultOverlayManager.onDrawHelper there is now a test about "should this Overlay be displayed given its bounding box" that uses BoundingBox.overlaps, but this method doesn't take into account the map orientation.
Therefore:

in first approach, the BoundingBox.overlaps optimization must be removed altogether from DefaultOverlayManager.onDrawHelper
@nullApex You can do that in your own code: just copy DefaultOverlayManager into your own class and remove the call to BoundingBox.overlaps
of course we should also remove that overlaps check from the main osmdroid code
in a second step, we should think about implementing that optimization. I guess this will involve Projection and the Overlay.getBounds

Thanks, that fixed it :D, have a nice day!

Fixed by #1464

Created #1465 for the optimization part.


libxx: All cxx libraries move down one level

libxx: All cxx libraries move down one level
Since there are some patches that need to be loaded manually, the original method is rather confusing. Now these patches that need to be loaded manually are classified into various cxx library folders, and each dynamically downloaded cxx library is moved down one directory to make the directory structure clearer.

please fix the conflict, @W-M-R

please fix the conflict, @W-M-R

OK, I just noticed


Adding References to Error Messages

Added some references to several error messages to help debugging in environments with minimal support.

Several unused error codes were found. If anyone thinks these error codes are erroneously unused, let me know and I will leave them in with a ToDo to have them used. Otherwise the unused error code will be deleted before merging.

This PR addresses issue https://github.com/microsoft/qsharp-compiler/issues/42 (and similar things).


Waiting for mplayer

Is there some way to wait for the slave process to finish before exiting the script? The script starts the slave, plays the song and quits immediately.

The Slave class exposes its process id, so you should be able to do something like the following:
player = MPlayer::Slave.new 'somefile.ogg'
# Do whatever
Process::waitpid2 player.pid

I agree that this might be useful for some users so it might get added as Slave#wait at some point. I don't actively use this gem anymore (basically because I replaced the project I needed it for with mpd) and I don't know about @petems but if you send a pull request I'll merge it.

Can mpd be used through home-brew on a desktop PC? I would like to use it for http streams from soundcloud. Is this possible?
Ok, gonna make a pull request later on for it :)

mpd offers binaries for Linux and Windows and there are clients for just about any platform. There's also another mpd-compatible server implementation but I can't remember the name right now.
My current setup is mpd running on a Banana Pi (think Raspberry Pi with slightly better hardware), Cantata as a client on Windows and macOS and mPad as a client on my iPad.

Yep, it's on brew: http://brewformulas.org/Mpd
@SirWindfield Feel free to PR, I was using this gem actively for a project I was working on but have since moved to other stuff.
BTW, if you want to do http streams from Soundcloud,  I recomend: https://github.com/grobie/soundcloud2000 👍

BTW, if you want to do http streams from Soundcloud, I recomend: https://github.com/grobie/soundcloud2000 👍

I already found that one. I want to do something similar with another goal. Playing random songs by genres or artist and if I like them, I can simply type add <playlist> and it gets added to a playlist so I can later on download or buy them. The program does break against the ToS though, it downloads the files into a directory while running.

Yeah, in that case, mpd + ruby-mpd might be just the right combination for you.

Mind getting me started a bit? The library internally uses the libmpd library. Basically, a server is running in the background that handles music playing and things like that.
I couldn't find a method to just simply stream a file from the web. Do I just use the normal add method?

mpd is basically a backend for media playback that you can control through tons of different clients. I haven't worked with ruby-mpd in a while but yes, you should be able to pass a url to add the same way you would pass a local path. You can even save them to playlists like normal songs.


Profile - Status timeout briefly changed to "Never" when saving it as "Today"

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.66-0
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/5260055&group_by=cases:section_id&group_order=asc&group_id=229064
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Issue reported by: Applause Internal Team
Action Performed:

Open the Expensify app.
Tap on "Settings" on the bottom of the screen.
Tap on "Profile" and select "Status"
Select any emoji and write any message.
On "Clear After" select "Today"
Tap on "Save"
Verify that when the status is saved, timeout is not changed.

Expected Result:
When the user selects "Today" as timeout and save the status, timeout should remain the same and not be changed.
Actual Result:
When the user saves a status and selects "Today" in "Clear After", timeout is briefly changed to "Never" after tapping "Save"
Workaround:
Unknown
Platforms:

[x] Android: Standalone
[x] Android: HybridApp
[x] Android: mWeb Chrome
[ ] iOS: Standalone
[ ] iOS: HybridApp
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos

https://github.com/user-attachments/assets/b0771db4-c5ca-45f0-95d6-b3d2659e3f86

View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
"Clear after" option gets set to "never" when we set the profile status
What is the root cause of that problem?
User.clearDraftCustomStatus(); in the updateStatus method since it sets clearAfter: ''
https://github.com/Expensify/App/blob/f4f8da74c100f2c5ddb666ff4314038010104cbf/src/pages/settings/Profile/CustomStatus/StatusPage.tsx#L108
What changes do you think we should make in order to solve the problem?
Remove this line in StatusPage file since it's setting clearAfter:  '' which leads to Never showing up
https://github.com/Expensify/App/blob/f4f8da74c100f2c5ddb666ff4314038010104cbf/src/pages/settings/Profile/CustomStatus/StatusPage.tsx#L108
we don't need to call it in the function since it's already getting called over here in the useEffect's return callback
https://github.com/Expensify/App/blob/f4f8da74c100f2c5ddb666ff4314038010104cbf/src/pages/settings/Profile/CustomStatus/StatusPage.tsx#L135-L144
What alternative solutions did you explore? (Optional)
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Status timeout briefly changed to "Never" when saving it as "Today"
What is the root cause of that problem?
When the "Save" button is clicked, it first clears the draft status and only then navigates back to the previous screen.
https://github.com/Expensify/App/blob/f4f8da74c100f2c5ddb666ff4314038010104cbf/src/pages/settings/Profile/CustomStatus/StatusPage.tsx#L103-L111
What changes do you think we should make in order to solve the problem?
To resolve this, we can ensure that the User.clearDraftCustomStatus(); call is executed only after the modal has fully closed.
             User.updateCustomStatus({
                 text: statusText,
                 emojiCode: !emojiCode && statusText ? initialEmoji : emojiCode,
                 clearAfter: clearAfterTime !== CONST.CUSTOM_STATUS_TYPES.NEVER ? clearAfterTime : '',
             });
-            User.clearDraftCustomStatus();
             navigateBackToPreviousScreenTask.current = InteractionManager.runAfterInteractions(() => {
                 navigateBackToPreviousScreen();
+                Navigation.isNavigationReady().then(() => {
+                    User.clearDraftCustomStatus();
+                });
             });

Proposal
Please re-state the problem that we are trying to solve in this issue.
Status timeout briefly changed to "Never" when saving it as "Today"
What is the root cause of that problem?
When the "Save" button is clicked, it first clears the draft status and only then navigates back to the previous screen.
https://github.com/Expensify/App/blob/f4f8da74c100f2c5ddb666ff4314038010104cbf/src/pages/settings/Profile/CustomStatus/StatusPage.tsx#L103-L111
What changes do you think we should make in order to solve the problem?
To resolve this, we need to delay the User.clearDraftCustomStatus(); call until the modal has fully closed.
             User.updateCustomStatus({
                 text: statusText,
                 emojiCode: !emojiCode && statusText ? initialEmoji : emojiCode,
                 clearAfter: clearAfterTime !== CONST.CUSTOM_STATUS_TYPES.NEVER ? clearAfterTime : '',
             });
-            User.clearDraftCustomStatus();
             navigateBackToPreviousScreenTask.current = InteractionManager.runAfterInteractions(() => {
                 navigateBackToPreviousScreen();
+                Navigation.isNavigationReady().then(() => {
+                    User.clearDraftCustomStatus();
+                });
             });

Dupe of https://github.com/Expensify/App/issues/50170


Unable to determine if a test is running in parallel or not

Expected behavior
Gauge-Java should have a couple variables added to ExecutionContext that states if an execution is running in parallel, how many nodes are executing, and how many were specified.
Actual behavior
Without some nasty work-arounds, this is not possible to determine.
Steps to reproduce
N/A
Gauge version
v0.9.7+

Closing this as an old issue. However, any PR's to fix this will be merged.


JOSS: Manual tests

Please consider a brief description how to test if software is working properly. Proposal:

start software
load specific set of example data
screenshot what should be seen
Using button "X" - this should happen (maybe for multiple buttons)

This can also help to understand the functionality of the software.

A basic set of manual test cases was added previously per #12. See MANUAL_TESTING.md.

Thanks for adding this. I propose to also link this file in the main README.md. (This is a nitpick.) Therefore, I am closing this, and you may add it if you like it.

@destogl, good point - I just added the link.


No feedback why launch fails

While there are plenty of logs while building docker images for binder, there are no logs at all while launching the image. I only get
Found built image, launching...
Launching server...
Image gcr.io/binder-prod/r2d-05168b0-jdemeyer-2dpep575binder-097db3:a4fc44a26cd379aceddb739168a4267338707da3 for user jdemeyer-pep575binder-0fukjo5h took too long to launch

In this case, the failure was because of a broken Jupyter installation, but the lack of logs is really annoying.

Usually something like this is actually an error under-the-hood on the binder servers or instability in google cloud. Once a Docker image is built, it should launch (AKA, it shouldn't be the user's fault if it doesn't, unless they're using a Dockerfile). There's been a bit of instability over the last few days so this could be what you ran into...

unless they're using a Dockerfile

That's actually the whole point of this issue. When something goes wrong with a customized image, it's not easy to find out why.

Yeah - the challenge there is that Dockerfiles present a big forking paths problem and we are a bit hesitant to design lots of process around them. (e.g., we'd need to run a check on each Dockerfile to find pre-defined errors and then give an error message for each)
We're treating Dockerfiles as "this is an advanced use-case, if you're doing it then you should expect a bumpier process in getting things set up just right". However we try to give as much helpful information as possible in constructing a Dockerfile for use with Binder/JupyterHub - have you found this page?
https://mybinder.readthedocs.io/en/latest/dockerfile.html

To be entirely clear, I didn't use a Dockerfile but a postBuild script. Such a script is easier to use than a DockerFile but given that it can execute arbitrary code, it can also mess up things badly.
Yes, I found https://mybinder.readthedocs.io/en/latest/dockerfile.html and I think that it's pretty clear actually.

Ah- could you share a link to your repo? Perhaps we can spot check the
problem even if the larger issue of unhelpful error messages is unresolved
On Fri, Apr 13, 2018, 7:26 AM jdemeyer<EMAIL_ADDRESS>wrote:

To be entirely clear, I didn't use a Dockerfile but a postBuild script.
Such a script is easier to use than a DockerFile but given that it can
execute arbitrary code, it can also mess up things badly.
Yes, I found https://mybinder.readthedocs.io/en/latest/dockerfile.html
and I think that it's pretty clear actually.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jupyterhub/binderhub/issues/522#issuecomment-381152403,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABwSHebMMR9WZsbTQIxUIhEXT0BDSNuyks5toLWYgaJpZM4TTYEb
.

I already solved my problem, it works now. Anyway, the repo is https://github.com/jdemeyer/pep575binder

What solved your problem? The reason I ask is that I'm trying to tease apart errors due to configuration problems (which we probably could build error messaging around) and errors due to server problems (which will be hard to capture with an error message)

What solved your problem?

Installing Jupyter in the image.

I thought you said you were using a postBuild script and not a Dockerfile?

Hey - I'm going to close this since it sounds like your issue was resolved, but please do feel free to reopen in case you'd still like discussion on something!

Has the issue in the title "No feedback why launch fails" been addressed? It's not because I managed to launch my Jupyter notebook anyway, that this underlying issue is solved.


Wrong expected type in class Goal from lida/datamodel.py

Once I run the sample code for extracting charts, I encountered a problem of different expected type for visualisation variable in class Goal. Please change the expected type of the variable from str to dict. Thank you!

@trojrobert , any chance you want to open a PR for this?

@victordibia  Ok, I will look into it


Datetime assertions don't work with null.

A date time field does not validate as a date field cannot be equal to null in sql. The correct syntax for this is:
column is NULL;
as opposed to
column = NULL;

Done.


Support for crossing wires conventions to make explicit that there is no join

Could you please introduce an option whereby, whenever we have two lines crossing in a diagram, one of them behaves as either B or C, shown below?

Thank you.

Search first before posting.


Adding IREE_HAL_EXECUTABLE_IMPORT_PROVIDER_DEFAULT_FN config.

This allows applications to specify an import provider that works in the generic driver factories. Applications wanting more control over the provider should create their executable loaders themselves and pass the provider in.

Yep - custom runtime-provided functions (vs ones we link in to the executables we emit) - should allow users to plug in their own functions if they want though there's still some work needed to make it easier (lowering funcs to LLVM ABI goo) - for now it should unblock experimentation 🤞


Feature Request: Conditional Target

Is your feature request related to a problem?
At the moment all conditions must pass before reaching the target stage.
If at least one condition fails then all targets are skipped.
The reasoning was because we designed one pipeline per manifest so it didn't make sense to proceed if at least one condition failed.
The reality is we can have multiple pipeline within a manifest as we can have multiple actions.
It worth mentioning that we can "revert" the expected result of condition using the boolean failwhen
Solution you'd like
In this pullrequest, @dcoraboeuf suggested to add a new target setting
https://github.com/updatecli/updatecli/pull/1382
such as
conditions:
    versionExist:
        kind: yaml
        spec:
            ...
targets:
    version:
        kind: yaml
        conditions:
            - versionExist
        spec:
            ...

Alternatives you've considered
In my opinion a condition shouldn't be link to a target but link to an action
conditions:
    versionExist:
        kind: yaml
        # actionID means the condition is only a requirement for the pipeline linked to the actionID
        actionid: github
        spec:
            ...
targets:
    version:
        kind: yaml
        spec:
            ...
actions:
    github:
        kind: github/pullrequest

Anything else?
No response

I really like the proposal from @dcoraboeuf:
An updatecli target means "changing a file or a set of file": having conditions to control wether or not to run the change is pretty logic

I'm not sure why would you want to conditionalize an action as it maps to "do something with locally changed file so that it is remote". Do you have a use case in mind @olblak?
The ability to attach condition to both targets or actions is appealing though. But clearly, not being able to apply conditions on targets looks bad to me

Thinking with the target scenario, there are some UX question though:

What would be the behavior of a target without the conditions keyword?

Implicit "ALL" conditions as for today,
or explicit conditions as a new behavior?

I must admit the condition on the target makes more sense but my usecase remains the same, being able to have multiple action targeting different git repositories.
But in my case, I always managed to move that condition step to the "source" stage, so the source would only returns the value that I am looking for such as:
    golangModuleVersion:
        name: Get latest golang module golang.org/x/mod version
        kind: golang/module
        spec:
            module: golang.org/x/mod
            versionfilter:
                kind: semver
                pattern: v0.11.0 || >0.11 < 1
targets:
    golangModuleVersion:
        name: Update golang.org/x/mod Golang module version
        kind: golang/gomod
        spec:
            file: go.mod
            module: golang.org/x/mod
        scmid: default
        sourceid: golangModuleVersion

where I am looking for a minor version update otherwise I fallback to v0.11.0 which is the current value being used in my target

So I would be interested by a specific usecase

Thanks for the issue and the discussion.
As for a use case, I find myself in the following situation:

upon a release, we have 2 files to update
one of these files, we have to update all the time
but the second file, as per the existing delivery process, we may have to update or not, based on some human-based decision

The "updatecli" process is actually run manually at release time and the operator will have to decide if yes or no the second file has to be changed.
Technically, I can put the result of this decision in an environment variable and I can have a condition based on this environment variable being set or not (using a shell resource).
However, I need this condition to be applied to only one target. The rest of the pipeline (the other targets and my final action, the creation of a PR in my case, remains the same).
Of course, if there would be another way to achieve this scenario, I'm all for it. In the meantime, I've extracted this logic into a target based on a shell resource but that's a bit of a pity since I need to recode the update of the file itself (it's a Toml file) instead of relying on the updatecli definition.

if there would be another way to achieve this scenario, I'm all for it

As a workaround, you could have two manifests, one always updating the file and the other conditionnally updating the other file.

if there would be another way to achieve this scenario, I'm all for it

As a workaround, you could have two manifests, one always updating the file and the other conditionnally updating the other file.

I like this :)

if there would be another way to achieve this scenario, I'm all for it

As a workaround, you could have two manifests, one always updating the file and the other conditionnally updating the other file.

This workaround  remind me a brainstorming discussion I had with @gounthar a few days ago and one of the ideas that surfaced was: "could we share sources across pipelines? But only sources". With the following ideas:

sources can take some time to be retrieved (I'm watching you gittag with nginx or ruby repositories... :D ), so when a big run of updatecli is executed, being able to reuse sources could gain a few seconds and resources

The conditions could stay as it is today (please note that it is not mutually exclusive with the outcome of this "conditionnal target" issues) but you would have pipeline driven by the condition set (so 2 pipelines in your case @dcoraboeuf ) sharing the same source.

Pros: controling execution outcome would be easier: different exit codes and stdout for each pipeline to get a clear diagnostic of "what changed, what failed, what was skipped"
Cons: have to write to files and reference a common source

Food for though: @olblak I'm sure that is something you though about months (year?) ago

This workaround remind me a brainstorming discussion I had with @gounthar a few days ago and one of the ideas that surfaced was: "could we share sources across pipelines? But only sources".

I think it was during our discussion on how to keep various Alpine-based images (such as Python, Ruby, PHP, Golang, etc.) up to date.
For each manifest, we would need to find the latest version for the specific language and then for Alpine in order to compose a Docker tag like ruby:3.2.2-alpine3.18.
Having a reliable source for Alpine information for several pipelines could greatly expedite the completion of these tasks.

As Herve suggested, I usually go with different manifests using the same pipelineid.
-> https://github.com/updatecli/website/issues/542
This allow me to express different pipeline behavior while targeting the same pullrequest when I need to group change in an atomic operation.

Food for though: @olblak I'm sure that is something you though about months (year?) ago

Ho yeeeeeah.
What you suggest would contribute to two different areas

Performance: Running tasks in parallel would drastically improve the performance
Because Updatecli usually run in a CI, the performance is not something that bother me a lot and we can improve everything at the same time.
UX: having to duplicate the same resource across manifest is really annoying.
This one really bother me, we already have open issues for that

I've been thinking to solve those two problems for a quite long time, but until today I didn't find one that I was happy with:
At the moment Updatecli is design with one manifest equal one pipeline.
Being able to executed pipeline in parallel for performance reason or cross reference means we need to identify each resource with a unique ID

[performance] Similarly to scm, build a DAG of resources and then execute them in parallel.
[performance, UX] Reuse resource result across pipeline and only re-execute a  source/condition/target if the result is older than X
[UX] Moving that complexity to the DSL
a. [UX] Cuelang has some interesting approach to templating
b. [Performance, UX] HCL solved that problem but I really struggle to use it in the past

With my current experimentation about building a webapp, being able to identify resources is critical to me atm.
Hence https://github.com/updatecli/updatecli/pull/1395

As Herve suggested, I usually go with different manifests using the same pipelineid. -> updatecli/website#542 This allow me to express different pipeline behavior while targeting the same pullrequest when I need to group change in an atomic operation.

Food for though: @olblak I'm sure that is something you though about months (year?) ago

Ho yeeeeeah.
What you suggest would contribute to two different areas
1. Performance: Running tasks in parallel would drastically improve the performance
   Because Updatecli usually run in a CI, the performance is not something that bother me a lot and we can improve everything at the same time.

2. UX: having to duplicate the same resource across manifest is really annoying.
   This one really bother me, we already have open issues for that

I've been thinking to solve those two problems for a quite long time, but until today I didn't find one that I was happy with:
At the moment Updatecli is design with one manifest equal one pipeline. Being able to executed pipeline in parallel for performance reason or cross reference means we need to identify each resource with a unique ID
1. [performance] Similarly to scm, build a DAG of resources and then execute them in parallel.

2. [performance, UX] Reuse resource result across pipeline and only re-execute a  source/condition/target if the result is older than X

3. [UX] Moving that complexity to the DSL
   a. [UX] Cuelang has some interesting approach to templating
   b. [Performance, UX] HCL solved that problem but I really struggle to use it in the past

With my current experimentation about building a webapp, being able to identify resources is critical to me atm. Hence #1395

Note that I'm only scoping this to sources (not all resources). That would probably mean to have an explicit reference, something like this:
sources:
  alpineVersion:
    external: ./updatecli/updatecli.d/another-pipeline.yaml # The reference pipeline must have a source which id the same, eg. `alpineVersion`

targets:
# ...

The parallelization is a bigger topic and we could immediatly benefit in performance and UX with "only the sources without having to refactor the whole pipeline tree execution (I don't say we shouldn't, I'm just saying we can already benefit with a tighter scope)

We heavily diverged from the condition target :D
To come back the the current issue, the current workaround is to have different manifest using the same pipelineid.

Regarding major refactoring we need define what is the most important between UX vs Performance
@dcoraboeuf looks more UX while @gounthar sounds performance issues
I also have concerned to end up in a local optimum just by focusing on "source"
Last time I experimented with the current problematic was in this issue https://github.com/updatecli/updatecli/issues/430#issuecomment-1342652955
Back then, my concern was to re-implement in Updatecli something which I think should be handled at the DSL level. 🤷🏾

That being said, @dcoraboeuf suggestion looks good to me  and wouldn't require a large refactoring
targets:
    version:
        kind: yaml
        conditions:
            - versionExist
        spec:
            ...

maybe I would use conditionids to look like more scmid or sourceid
If conditionids is undefined then we fallback to all specified conditions otherwise we limit to listed conditionids

If a target points, through conditionids to a condition defined in the global conditions under conditions, would that condition be counted in the global evaluation? IMO, if a condition is used by a target, it should not be used for the global pipeline.
That's why I was thinking about putting the specific condition directly under the target definition to simplify the understanding of the pipeline logic (like in my preview PR at #1382). This way, there is no need to use references. Of course, if a condition would need to be reused between several targets, that'd be not possible.


feat: implement bidirectional fetch pieces

Signed-off-by: Jim Ma<EMAIL_ADDRESS>
Description

Related Issue

Motivation and Context

Screenshots (if appropriate)
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist

[ ] Code compiles correctly.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Codecov Report

Merging #1165 (e608e6a) into main (7687985) will increase coverage by 0.33%.
The diff coverage is 52.51%.

@@            Coverage Diff             @@
##             main    #1165      +/-   ##
==========================================
+ Coverage   45.77%   46.11%   +0.33%
==========================================
  Files         130      132       +2
  Lines       10027    10236     +209
==========================================
+ Hits         4590     4720     +130
- Misses       4915     4972      +57
- Partials      522      544      +22

Flag
Coverage Δ

Object-compatibility-e2etests
?

e2etests
?

unittests
46.11% <52.51%> (+0.33%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

cdn/rpcserver/rpcserver.go
60.60% <0.00%> (-0.37%)
:arrow_down:

client/daemon/peer/peertask_file.go
57.69% <0.00%> (ø)

client/daemon/peer/peertask_manager.go
30.57% <0.00%> (-2.46%)
:arrow_down:

client/daemon/storage/local_storage.go
29.29% <0.00%> (+0.35%)
:arrow_up:

scheduler/resource/cdn_mock.go
19.69% <0.00%> (-3.52%)
:arrow_down:

client/daemon/rpcserver/subscriber.go
53.68% <53.68%> (ø)

client/daemon/rpcserver/rpcserver.go
38.66% <65.95%> (+7.31%)
:arrow_up:

client/daemon/peer/peertask_stream.go
64.78% <71.42%> (ø)

client/daemon/peer/peertask_conductor.go
57.36% <100.00%> (+0.15%)
:arrow_up:

client/daemon/peer/piece_broker.go
85.18% <100.00%> (-3.71%)
:arrow_down:

... and 22 more


Server-Sent Events implementation

Hello,
I implemented the the long polling protocol Server-Sent events ( http://dev.w3.org/html5/eventsource/ ) and I guess you like the idea because it is a good, more stable and simpler alternative to WebSockets.
Tested on latest version of Opera, Chrome, Safari and Firefox.
I hope you like.

can server side detect 'close' event. when i refresh my browser, I see waiters increase and never decrease.
can you tell me how to configure nginx for eventsource.

Hey lepture :)
I will check about the (1) this evening
About Nginx:

it must be compiled with TCP proxy module ( https://github.com/yaoweibin/nginx_tcp_proxy_module )
the configuration must be like this:

tcp {
upstream play {
server <IP_ADDRESS>:9000; # T-Dispatch websockets
}
server {
listen 2080;
server_name domain.com;
proxy_pass play;
}
}

I am now more interested in Evensource , and looking into it. The other implementations are outdated and not working with latest tornado 4.1 , i am going to give this a try and if it fits my needs, it would be nice to have in tornado. (Or i will maintain it as a separate lib).

I myself have been very interested this as an alternative to web sockets. I don't think it belongs in the standard tornado library either, but since from my own googling this came up as one of the top 3 results, I want to post this here:
https://gist.github.com/ProtonScott/5aaf6aaa2314a9c46cb40c3253fa8c49
Its a very simple (and I will be definitely updating in the next few days with more code to flesh it out) implementation based on this commit, but with more up-to-date async await syntax where it counts. I intend on testing it heavily over the next week ( this is as of Feb 25 2018). I just hope it helps anyone else looking for a solution to this.

I made one my own , yours it better since it uses async await.

Over the years since this PR was opened, websockets have continued to gain ground relative to SSE/EventSource (and have certain advantages like the ability to ping to detect disconnected clients). IE/Edge still haven't implemented SSE. I don't see any reason to dust off this PR and include an SSE implementation in Tornado (especially since it's straightforward to do in a third-party package), so I'm closing it.

It is easy to do SSE handler our own so i am fine with this closing.
SSE still have advantage over Websocket in unreliable internet connections.


Breadcrumbs Misaligned

Describe the bug
The text and arrows of the breadcrumbs seem to be misaligned:

Compare to demo.bpmn.io:

Steps to reproduce

Create a collapsed sub-process

Expected behavior
Breadcrumbs are aligned.
Environment

Camunda Modeler Version: 5.13

Additional context
No response

can someone assign me this issue? new to the community, would love to work on it!

@ranjanmangla1 We accept contributions to fix this issue.

Fixed upstream via https://github.com/bpmn-io/bpmn-js/pull/1945.

Fixed via https://github.com/camunda/camunda-modeler/commit/87f5025ac67483ff98d2a65c0e824601179eede4.

Actually not fixed (yet).

Closed by https://github.com/camunda/camunda-modeler/pull/3832.


plumbing/cache: specify units in memory size (Fix #234)

Codecov Report

Merging #289 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master     #289   +/-   ##
=======================================
  Coverage   76.88%   76.88%
=======================================
  Files         116      116
  Lines        7886     7886
=======================================
  Hits         6063     6063
  Misses       1169     1169
  Partials      654      654

Impacted Files
Coverage Δ

plumbing/cache/object.go
100% <100%> (ø)
:white_check_mark:

Continue to review full report at Codecov.

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


Merging a pull request instead of cherry-picking

I see no problem merging a pull request as long as the pull request is properly rebased and squashed. It also means we can use the 'Merge pull request' button and 'Delete the merged branch' button in the Github pull request page, which is super convenient. What do you think?

/cc @normanmaurer @Scottmitch @buchgr @nmittler

@trustin - I prefer to cherry picking for the following reasons:

We often have to put PR changes into multiple branches, and I think this means you will have to use command line most of the time anyways.
Keeps log cleaner, doesn't get cluttered up with merge branches.

I'm not against merging, but are there other positives besides convenience?

I think you are right. We use command line to work on more than one
branch almost always, there is not much merit of using web UI and
introducing merge commits.

+1 to use cherry-pick

Am 08.08.2015 um 07:14 schrieb Trustin Lee<EMAIL_ADDRESS>I think you are right. We use command line to work on more than one
branch almost always, there is not much merit of using web UI and
introducing merge commits.
—
Reply to this email directly or view it on GitHub.

cherry pick gets my vote.


Let user select font

Hello,
I think a nice feature for this tool would be to let the user select the desired font for captions. Since you use ImageMagick to add the captions, this could just be specified as a parameter to IM.
Cheers!

Hello,
That is a great idea. I will look into adding this.
Thanks!

You can now pick your own font. Merging into master soon. :+1:

Awesome! I'll be sure to test it!
Thanks a bunch :)


remove equal_nan from array.serialize

This will allow the required numpy version to be older

https://github.com/3ptscience/properties/commit/ae17965cf709e13c8d983f8be86fbd5542fc1e9f


ARM image?

Is it possible for kubemq to provide ARM image?

https://github.com/kubemq-io/kubemq-community/issues/12
I notice this issue, but I cannot find anything in the release page in Github. Should I check somewhere else?

Hi,
We can compile kubemq to ARM architecture.
Can you give more info about the usecase ?
Lior,
On Tue, Sep 13, 2022 at 4:23 PM John Winston @.***>
wrote:

Is it possible for kubemq to provide ARM image?
—
Reply to this email directly, view it on GitHub
https://github.com/kubemq-io/kubemq-community/issues/23, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK5WGXCJ4KTSU6244ZU5BY3V6B55HANCNFSM6AAAAAAQLOCJXA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

In Oracle Cloud, only ARM instance are always free. The arch will be an important factor for user to decide which MQ to use.
I think ARM is having more user as well because of MacBook, even though aarch64-darwin !== aarch64-linux

Hi,
please check out the releases page:
https://github.com/kubemq-io/kubemq-community/releases/tag/v2.3.0-beta-2
You will find ARM based artifacts

@kubemq Thanks for your update! I know it is a lot to ask, but I guess it will make kubemq easier to be adapted, if images of different archs are provided as well

Images of what? Docker?
On Fri, Sep 23, 2022, 13:21 John Winston @.***> wrote:

@kubemq https://github.com/kubemq Thanks for your update! I know it is
a lot to ask, but I guess it will make kubemq easier to be adapted, if
images of different archs are provided as well
—
Reply to this email directly, view it on GitHub
https://github.com/kubemq-io/kubemq-community/issues/23#issuecomment-1256037472,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK5WGXBA74JEN4A4NVAXJYLV7WAD3ANCNFSM6AAAAAAQLOCJXA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Yes docker image. It can be acheived with docker buildx, and a matrix of arch(not sure if it exists for github action yet) to trigger the build flow for different arch.

We will look into that
On Fri, Sep 23, 2022, 15:05 John Winston @.***> wrote:

Yes docker image. It can be acheived with docker buildx, and a matrix of
arch(not sure if it exists for github action yet) to trigger the build flow
for different arch.
—
Reply to this email directly, view it on GitHub
https://github.com/kubemq-io/kubemq-community/issues/23#issuecomment-1256126254,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK5WGXBUSXWZ6NHL467WKULV7WMI3ANCNFSM6AAAAAAQLOCJXA
.
You are receiving this because you were mentioned.Message ID:
@.***>


(PUP-1353) Start Posix based services with a 0 priority

Puppet's base service provider starts services as a child process of the
Puppet process. On Posix systems the child process inherits the priority
or nice value of the parent process. The result is that services which
are started as child processes of Puppet have their priority set to
Puppet's priority. This behavior is undesirable as services expect to
be started with a 0 or normal priority. This commit ensures services are
started with a normal priority by changing the priority of the child
process when starting a service.
Example of old & new behavior on Debian Wheezy:
; git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
; sudo /etc/init.d/ntp stop
Stopping NTP server: ntpd.
; nice -n 13 sudo bundle exec puppet apply -e 'service { "ntp": ensure => "running" }'
Notice: Compiled catalog for foo in environment production in 0.12 seconds
Notice: /Stage[main]/Main/Service[ntp]/ensure: ensure changed 'stopped' to 'running'
Notice: Applied catalog in 0.05 seconds
; ps -C ntpd -o pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
PID   TID CLS RTPRIO  NI PRI PSR %CPU STAT WCHAN          COMMAND
30269 30269 TS       -  13   6   6  0.0 SNs  -              ntpd
; git checkout service_priority
Switched to branch 'service_priority'
Your branch is up-to-date with 'origin/service_priority'.
; sudo /etc/init.d/ntp stop
Stopping NTP server: ntpd.
; nice -n 13 sudo bundle exec puppet apply -e 'service { "ntp": ensure => "running" }'
Notice: Compiled catalog for foo in environment production in 0.11 seconds
Notice: /Stage[main]/Main/Service[ntp]/ensure: ensure changed 'stopped' to 'running'
Notice: Applied catalog in 0.04 seconds
; ps -C ntpd -o pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
PID   TID CLS RTPRIO  NI PRI PSR %CPU STAT WCHAN          COMMAND
30536 30536 TS       -   0  19  10  0.0 Ss   -              ntpd

Can one of the admins verify this patch?

CLA signed by all contributors.

updated to fix the tests, apologies for missing that with my first commit.

Would anyone be able to help me debug the windows build failure via AppVeyor, I don't have access to a Windows test box at present. All the tests passed but rspec exited 1 and the build failed.

Thanks @lollipopman! I'm 👍 with the general PR, and had a few minor comments:

The PR would cause a behavior change by default, as services would be executed at normal priority instead of the priority of the puppet (parent) process. Since puppet has worked this way for a long time, someone may be relying on the current behavior. Insert favorite xkcd "you broke my workflow" quote here.
I'm thinking we should define a priority parameter on the service type and have it default to nil to mean the current behavior (run at the same priority as puppet). But allow users to specify a priority, so in lib/puppet/type/service.rb, addnewparam(:priority) do
  newvalues(:high, :normal, etc)
end

In the service provider, lookup the current priority from @resource[:priority], and only call setpriority if the value is non-nil.
I agree with @jtappa about moving the priority map from settings to Puppet::Util::Limits, and having settings and service type call that.

Hi @lollipopman! Just checking in on this PR to make sure we keep community PRs moving along. Did you still want to work on this based on @joshcooper's and my feedback?
Thanks!

@lollipopman we recently received a ticket where execute blows up when Puppet Server doesn't know about options or how to handle them. We need to make sure Puppet Server doesn't break if someone calls execute with a priority. This PR may need some updates related to that.

@jtappa thanks, I'll see if I can find some time to work on this in the next couple of weeks

Because of the nature of our APIs, any changes we make here need to also happen in Puppet Server and right now we don't have the bandwidth between teams to coordinate the changes. We do agree this change is reasonable and something we'd like to include eventually but unfortunately right now we can't move forward with it.

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


Author list - primary and corresponding author styling missing

Description:

[ ] Primary Authors are not shown in bold
[ ] Corresponding author does not have the envelope icon

Locations found:

browse all page, author list within table
single dataset top banner
single run, annotation table view
annotation metadata panel - "Author(s)" field

Design example with author styling:

Hold off as this likely overlaps with new author styling work that Kevin is designing

updates to Author styling is captured in #524 which overwrites this bug


Statusline not counting lowercase "w" and "e"

Some makers produce lowercase "w" and "e" in their error messages (at lease gcc and clang on my machine), and they are not counted in statusline.

This should be easy enough to fix.

Let me know if it isn't fixed for you.

Thanks. It works fine now.


Add support for 8bit parallel screen connection

Waits on https://github.com/lancaster-university/codal-stm32/pull/10

More codal changes coming https://github.com/lancaster-university/codal-stm32/pull/11

This should be ready and is required by latest codal-core

@pelikhan jacdac-ts is blocked on this PR

@mmoskal can you look at the conflicts?


[pipeline] Add code-generate function for auto-release pipeline

Swagger team pipeline sometimes fails and will block mgmt package release. To avoid this, auto-release pipeline needs to have competence to generate SDK code

https://github.com/Azure/azure-sdk-for-python/pull/22623

https://github.com/Azure/azure-sdk-for-python/pull/22802


graylog: 3.3.1 -> 3.3.2

Semi-automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/graylog/versions.
meta.description for graylog is: "Open source log management solution"
meta.homepage for graylog is: "https://www.graylog.org/"
meta.changelog for graylog is: ""
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 3.3.2 with grep in /nix/store/306qi72ilgi6w70mcjgymqv8x44achcm-graylog-3.3.2

directory tree listing: https://gist.github.com/4ecd90516c70157dc5b22fcefb74e3b3

du listing: https://gist.github.com/6db24cfd2929a67fe213e65d26be4228

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
graylog

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/306qi72ilgi6w70mcjgymqv8x44achcm-graylog-3.3.2 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A graylog https://github.com/r-ryantm/nixpkgs/archive/dcf20331cf56fd26adde5b1831dcd1ea288cb3f4.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/306qi72ilgi6w70mcjgymqv8x44achcm-graylog-3.3.2
ls -la /nix/store/306qi72ilgi6w70mcjgymqv8x44achcm-graylog-3.3.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

1 package built:
- graylog

Maintainer pings
cc @fadenb for testing.

Backported as c2eca910059bf6f780fb8af06f5a10e9ef469882


SYCL: Alternative solution to avoid runtime error of launching kernel on xpu:1 when que…

…rying SYCL kernel bundle ahead
The kernel won't be built for devices except for the first device. Launching kernel on devices except for the first device will raise runtime error. Here is an alternative as a temporary solution to provide an extra hint to SYCL runtime. https://github.com/intel/llvm/issues/15127

@fengyuan14 , by the way, please give some detailed information here.

Please also modify UT scope description in:
https://github.com/intel/torch-xpu-ops/blob/main/.github/workflows/nightly_ondemand.yml#L25
https://github.com/intel/torch-xpu-ops/blob/main/.github/workflows/nightly_ondemand_rolling.yml#L25
https://github.com/intel/torch-xpu-ops/blob/main/.github/workflows/nightly_ondemand_whl.yml#L20

@fengyuan14 , by the way, please give some detailed information here.

Done


Watcher errors with ts-loader on file change

Laravel Mix Version: 4.0.12
Node Version: 11.5.0
NPM Version: 6.4.1
OS: Ubuntu 18.10
Description:
When using yarn run watch, the following error is produced after editing a file:
/~omitted~/Site/node_modules/ts-loader/dist/watch-run.js:18
        var times = watching.compiler.fileTimestamps;
                                      ^

TypeError: Cannot read property 'fileTimestamps' of undefined
    at /~omitted~/Site/node_modules/ts-loader/dist/watch-run.js:18:39
    at _err0 (eval at create (/~omitted~/Site/node_modules/tapable/lib/HookCodeFactory.js:32:10), <anonymous>:21:1)
    at compiler.plugin (/~omitted~/Site/node_modules/browser-sync-webpack-plugin/lib/BrowserSyncPlugin.js:24:5)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/~omitted~/Site/node_modules/tapable/lib/HookCodeFactory.js:32:10), <anonymous>:7:1)
    at AsyncSeriesHook.lazyCompileHook (/~omitted~/Site/node_modules/tapable/lib/Hook.js:154:20)
    at Watching._go (/~omitted~/Site/node_modules/webpack/lib/Watching.js:40:32)
    at Watching._invalidate (/~omitted~/Site/node_modules/webpack/lib/Watching.js:165:9)
    at watcher.compiler.watchFileSystem.watch (/~omitted~/Site/node_modules/webpack/lib/Watching.js:136:10)
    at Watchpack.watcher.once (/~omitted~/Site/node_modules/webpack/lib/node/NodeWatchFileSystem.js:59:4)
    at Object.onceWrapper (events.js:277:13)
    at Watchpack.emit (events.js:189:13)
    at Watchpack._onTimeout (/~omitted~/Site/node_modules/watchpack/lib/watchpack.js:144:7)
    at listOnTimeout (timers.js:324:15)
    at processTimers (timers.js:268:5)

Steps To Reproduce:
Occurred after upgrading to Laravel Mix 4.

Didn't look at ts-loader, since the initial compilation worked fine. Thanks!


refactor: move from io/ioutil to io and os packages

What this PR does / why we need it:
The io/ioutil package has been deprecated in Go 1.16 (See https://golang.org/doc/go1.16#ioutil). Since kubeone has been upgraded to Go 1.17 (#1534), this PR replaces the existing io/ioutil functions with their new definitions in io and os packages.
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

/retest


After upgrading to ReFit 2.4.0 I am now getting "doesn't look like a Refit interface" when using Xamarin iOS

I downgraded to 2.3.0 and it works but then when I upgrade to 2.4.0 it gives me
IYourRestService doesn't look like a Refit interface. Make sure it has at least one method with a Refit HTTP method attribute and Refit is installed in the project.
I have my "Refit interface" in a PCL library and the Refit.g.cs files generates fine when compiling in Visual Studio and Xamarin Studio on Windows ...
But when I try to compile and run the project on Xamarin Studio on iOS it doesn't generate the Refit.g.cs file :-(

/cc @onovotny

Does it create the rsp in the obj dir with the Cs files? Not sure how to debug this as I don't use xam studio.

No it doesn't create anything in the obj dir ... The only thing in there is the DLL and MDB file for that PCL library :-/   I turned on diagnostics output and the GenerateRefitStubs target never runs :-/  The refit.targets file gets included ... I can see it Import the project but it never runs the target before the CoreCompile...
I feel like it's related to what Eric was seeing in an issue with the BCL libraries
https://github.com/ericsink/SQLitePCL.raw/issues/48
I removed the BCL target from the proj file and then the Refit target started generating the .cs files :-/
Eric still hadn't really found a resolution for why the BCL target was interfering

So is this a bug in Xamarin Studio? The BCL targets? Where was the BCL targets coming from, Refit doesn't bring them in outside of WP8 where it's required. Not sure what we can do here?

No idea :-)    It's kind of funny because BCL comes from the HttpClient libraries which I've just been slacking on replacing with Refit ....
What I did find out though is if I add this guy to the refit.targets

        $(CoreCompileDependsOn);
        GenerateRefitStubs

Then everything generates for me :-)
I don't know why BCL causes it to ignore the BeforeTarget :-(   If that seems like an ok thing to add into the targets I can do a pull request real quick

Can you please submit a PR that includes that?


Discord Invite Email

Discord invite email, will be used to manually send to people that have joined us on Slack but not Discord, but may be useful in future too.

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


slurm jobs not entering queue

After fixing in the pull request I just submitted, I now see that somehow my slurm jobs are not entering the queue. This worked for me last night, so I'm not sure why it has stopped working now:
>>> job = cluster.Job('ls')
>>> job.write()
>>> job.submit()
Job:ls.0<slurm:41472211(command:ls;args:None)SUBMITTED>
>>> job.wait()
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "cluster/job.py", line 513, in wait
      self.queue.wait(self)
    File "cluster/queue.py", line 204, in wait
       '{} not in queue'.format(job))
    cluster.queue.QueueError: 41472211 not in queue

This problem arises despite the fact that the submitted job actually runs just fine and produces the expected output in the ls.0.cluster.out file.

Interesting, I will check on Monday morning and see if I can reproduce this.

Hi @jbloom, I am really sorry this took so long, I have been very busy at work and I just didn't have time to work on this at all.
So, I can't reproduce this on any of my machines, so it is likely unique to your machine, I would like to try and figure it out though. Could you try and run the same test again and then use sacct to see whether it entered the queue? It has been given a job number so my guess is that one of three things are happening:

There is a lag in the queue being updated on your machine, and so squeue and sacct are not reporting up to date information when you run job.wait()
The queue is being cleared very quickly after job completion.
squeue/sacct are returning slightly different information on your system and it isn't being parsed correctly.

So, could you try again and let me know if they do make it into the queue at all when this happens?
Thanks!

@jbloom: I tried to add a workaround that should solve possibility 1. by adding more attempts to query the queue before failure. I also made some changes to slurm queue parsing that make it more robust, so there is a good chance that those combined changes should solve this issue for you. Please let me know.

Closing now as I think this issue is fixed, let me know if it isn't


[WIP] Refactor healing

Description
Refactor healing.
Motivation and Context
Healing should looks better :)
How Has This Been Tested?

[x] Covered by existing integration testing
[ ] Added integration testing to cover
[x] Tested locally
[ ] Have not tested

Types of changes

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

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Depends on #1220.


Skip getauxblock tests when wallet disabled

The Xenial no-wallet runs fail in Travis because getauxblock is only present if the wallet is present, but the auxpow_mining.py tests run anyway. See:
https://travis-ci.com/github/dogecoin/dogecoin/jobs/511041147
Recommendation:
Introduce the test skip logic from https://github.com/namecoin/namecoin-core/blob/master/test/functional/auxpow_mining.py#L31

Oke sir

@rnicoll https://github.com/mmicael1/dogecoin/pull/1/commits/7f359b483d5fd73e26fdb17359cbdd2a56f10d2e

@rnicoll Now the tests are passing
https://github.com/mmicael1/dogecoin/commit/1199561d3471922338f709d6db6ac6d89f7d871f

Confirmed working with that commit cherry-picked, thanks! https://travis-ci.com/github/dogecoin/dogecoin/jobs/511279093


Adding popup for a new address - Step 0

As a user
when I type in my new address on the homepage
I am taken to a page with a popup "You're the first to support recycling for your building!"
The popup has two buttons, "Okay! Let's do this" or "I want to learn more first"
If I click on "Okay!" then I see instructions within the popup on what information to fill in.
After I click 'Continue' I see the normal address campaign page.

As a trial, we're going to implement the modal over the home screen (rather than on the /apartments/id page) when the user hits Submit.

We can keep the modal over the home page.


Write to home instead of temp

@functional review: @dr0i
@code review: @fsteeg

Deployed to https://test.metafacture.org/playground

Works, but I would find it better if the files were stored not in the root home directory of the user but in the apps directory (~/git/metafacture-playground), or even better in a subdirectory there e.g. ~/git/metafacture-playground/tmp . The latter would also be nice to cleanup .

I deployed again to https://test.metafacture.org/playground with the requested changes.

+1


Sort MOS for EDO results

Abnormality — Today at 3:57 AM

can there be a sort option for finding mosses from edos. like can there be an option to sort by either: size, hardness, generator(if that isnt hard to code), or badness(tho that one might be hard to code). because right now it feels like, especially with larger edos, the way its sorted isnt that helpful. also it might be nice to display the generator next to the name if that isnt too hard to code

The bright generator is computable with some additional cost. It's slightly complicated by multi-MOS where any period-shifted copy still counts as a bright generator. I guess we'll use the smallest one. Might drop it if gets too slow or there isn't space for it in the UI.
Badness isn't well-defined as we don't have a reference subgroup here.


Issue - Netty channelRead0 retrun ByteBuf msg null object and channel().isActive false

Expected behavior
ByteBuf msg should not null
Actual behavior
ByteBuf msg is null
Steps to reproduce
Used  4.1.48.Final jar java and normal client
Minimal yet complete reproducer code (or URL to code)
Netty version
3
JVM version (e.g. java -version)
1.8
OS version (e.g. uname -a)
@Override
public void channelRead0(ChannelHandlerContext ctx, final ByteBuf msg) {
        do {
            log.info(" channel().isActive false so waiting till become active");
            try {
                Thread.sleep(10);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        } while (!ctx.channel().isActive());
        if (msg != null) {
            byte[] bytes = new byte[msg.readableBytes()];
            msg.readBytes(bytes);
            response = bytes;
            if (response != null) {
                log.info("impl.DhcpNetty.DHCPClientHandler.channelRead0() - response length: {0}", response.length);
            } else {
                log.info("managers.dhcp.impl.DhcpNetty.DHCPClientHandler.channelRead0() - response length is ZERO");
            }
            msg.retain();
            msg.release();
        }
        responseReady.compareAndSet(false, true);
        request = null;
        log.info("SUCCESSFUL DHCPClientHandler.channelRead0");
    }

Please provide a full reproducer... Also calling Thread.sleep() in a handler is never a good idea as this will block the event loop.

Also, please use the latest version of Netty to test. Current latest version: 4.1.60.Final.

Removed thread sleep
changed code
@Override
public void channelRead0(ChannelHandlerContext channelHandlerContext, final ByteBuf msg) {
log.info("START .DHCPClientHandler.channelRead0");
this.channelHandlerContext = channelHandlerContext;
try {
if (msg != null) {
byte[] bytes = new byte[msg.readableBytes()];
msg.readBytes(bytes);
response = bytes;
if (response != null) {
log.info("Successful .DHCPClientHandler.channelRead0() - response length: {0}", response.length);
} else {
log.info("Successful .DHCPClientHandler.channelRead0() - response length is ZERO");
}
msg.retain();
msg.release();
responseReady.compareAndSet(false, true);
request = null;
} else {
log.info(".DHCPClientHandler.channelRead0() channelHandlerContext.isRemoved {0} - ", this.channelHandlerContext.isRemoved());
log.info(".DHCPClientHandler.channelRead0() channelHandlerContext.channel().isOpen {0} - ", this.channelHandlerContext.channel().isOpen());
}
} catch (Exception ex) {
log.severe("ERROR .DHCPClientHandler.channelRead0 {0}", ex.getMessage());
}
log.info("SUCCESSFUL .DHCPClientHandler.channelRead0");
}
Observation >>>>>>>>>>>>>> some time below method get read response but above metod returns always blank response
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) {
}
Currently I have kept 2 methods in class
We cant use new version due restrictions

You will need to provide us with a "full reproducer". Also please format your code in the markdown its really hard to read

Closing as no response from reporter


Wrong syntaxe highlight in Gherkin files

(Original issue 951 created by kossdav on 2014-01-23T16:11:10.191378+00:00)
In Gherkin files, when an "Example" section contains "#", the end of the line is displayed has if it was a commented part but it should not.
See a sample here : http://pygments.org/demo/210581/
In this sample the code after the code after | Champ numérique simple sans règles(  is displayed like a comment but it is not a comment...

(Original issue 951 last updated on 2014-04-28T09:09:05.930326+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by kossdav on 2014-01-23T16:21:10.464766+00:00)
Changed the sample URL to give a better one and precised more the description

(Original comment by jaingaurav2 on 2014-04-28T03:33:58.078420+00:00)
Pull request #340 should resolve this

(Original comment by birkenfeld on 2014-04-28T09:09:06.096978+00:00)
... and merged!


Improvement compute hash only if needed

Proposed changes
Hash values in dict column are always computed each time. Since those values are only needed by bloom filter predicate, this PR make it be computed only if it is needed.
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall


make configuration handling a lot better

this makes the configuration system far more resiliant to problems, as well as introduces some composability to it. This is how configuration is sourced at the moment, feedback welcome:

default: the configuration struct has a default value, which is computed with a specific implementation of the default trait
env vars: environment variables for the options available in the configuration, prefixed with ODILIA_
configuration file sent via a cli argument: if that argument is present, it will be converted to a path and then merged in with the rest
XDG_CONFIG_HOME: the file at $XDG_CONFIG_HOME/odilia/config.toml will be used
system wide: configuration from /etc/odilia/config.toml will be used

if any of those files don't exist, nothing will happen, because a good known default set is provided at startup, anything else is in addition to that.
if a file in XDG_CONFIG_HOME doesn't exist, it will be created with the default configuration. I may move it to later in the chain, to populate it with values from all other config sources listed above instead of only the defaults

Really liking this! Thank you for your time and effort!

no problem at all! someone has to do these things as well


Configuration is not read if signature_help handler defined

If i have this handler in my lsp configuration
["textDocument/signatureHelp"] = vim.lsp.with(
  vim.lsp.handlers.signature_help, {
    border = "rounded"
  }
)

the configuration of this plugin is not read, instead it is using the default one.
Is this expected ?

You will have to provide a border array.
ATM the plugin only support single and double.  They are predefined:
local double = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"}
local single = {"╭", "─", "╮", "│", "╯", "─", "╰", "│"}
You can provide a border with array format to border like this:
  vim.lsp.handlers.signature_help, {
    border =  {"╭", "─", "╮", "│", "╯", "─", "╰", "│"}
  }

Yes, i know it, i have looked into the source code, the problem is, whenever i define the signature_help handler, then the plugin not respect the configuration, here what is my config looks like
local config = {
  bind = true,
  floating_window = false,
  hint_prefix = " ",
  hint_scheme = "LspDiagnosticsDefaultHint",
  hi_parameter = "LspSignatureActiveParameter",
  extra_trigger_chars = { "(", "{", "," },
}

And the expected result is something like this

But if i define signature_handler like this
["textDocument/signatureHelp"] = vim.lsp.with(
  vim.lsp.handlers.signature_help, {
    border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"}
  }
)

The result become like this

As you see, lsp_signature use the border from that handler but not use the configuration from config

Well, you can not init lsp_signature like this:
["textDocument/signatureHelp"] = vim.lsp.with(
  vim.lsp.handlers.signature_help, {
    border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"}
  }
)

This will just use default signature_help provided by lsp_config
You have to do this:
require "lsp_signature".setup({
    bind = true,
    border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"},
    floating_window = false,
    hint_prefix = " ",
  })

Well, you can not init lsp_signature like this:
["textDocument/signatureHelp"] = vim.lsp.with(
  vim.lsp.handlers.signature_help, {
    border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"}
  }
)

Exactly, i do not initialize lsp_signature like this, but i have this in my  lsp handlers key, and because of that, even if i pass this configuration

This will just use default signature_help provided by lsp_config
You have to do this:
require "lsp_signature".setup({
    bind = true,
    border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"},
    floating_window = false,
    hint_prefix = " ",
  })

lsp_signature won't read them

For example, this is my clangd config
lspconfig.clangd.setup({
  on_attach = function(client, bufnr)
    require("lsp_signature").on_attach({
        bind = true,
        floating_window = false,
        hint_prefix = " ",
        hint_scheme = "LspDiagnosticsDefaultHint",
        hi_parameter = "LspSignatureActiveParameter",
        extra_trigger_chars = { "(", "{", "," },
      })
  end,
  capabilities = require("lsp.capability"),
  handlers = {
    ["textDocument/publishDiagnostics"] = vim.lsp.with(
      vim.lsp.diagnostic.on_publish_diagnostics, {
        virtual_text = false,
      }
    ),
    ["textDocument/signatureHelp"] = vim.lsp.with(
      vim.lsp.handlers.signature_help, {
        border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"},
      }
    ),
  }
})

The config expected to display lsp_signature with no floating window, but the result is what you see at this

The result become like this

It's become normal if i remove the vim.lsp.handlers.signature_help from my handlers list

So, is this expected behaviour ? we can not define vim.lsp.handlers.signature_help if we want to use lsp_signature config ?

If you are using Clangd, Here is what you config should look like
lspconfig.clangd.setup({
  on_attach = function(client, bufnr)
    require("lsp_signature").on_attach({
        bind = true,
        floating_window = false,
        hint_prefix = " ",
        hint_scheme = "LspDiagnosticsDefaultHint",
        hi_parameter = "LspSignatureActiveParameter",
        extra_trigger_chars = { "(", "{", "," },
      })
  end,
  capabilities = require("lsp.capability"),
  handlers = {
    ["textDocument/publishDiagnostics"] = vim.lsp.with(
      vim.lsp.diagnostic.on_publish_diagnostics, {
        virtual_text = false,
      }
    )
}

You do not need this:
    ["textDocument/signatureHelp"] = vim.lsp.with(
      vim.lsp.handlers.signature_help, {
        border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"},
      }
    ),

The reason is that you hook the signature twice and the second one will override the first. That is why the config is not working correctly.
The plugin allows  ["textDocument/signatureHelp"] to be overrided and will call the overriding signature function instead of the signature function provided by the plugin.

The reason is that you hook the signature twice and the second one will override the first. That is why the config is not working correctly.
The plugin allows ["textDocument/signatureHelp"] to be overrided and will call the overriding signature function instead of the signature function provided by the plugin.

Yes, I think so, I just wanted to know if we can define ["textDocument/signatureHelp"] with a border, and this plugin only takes the border without ignoring all its other configurations. but it looks like this plugin ignores the configuration.

In fact if you set
["textDocument/signatureHelp"] = vim.lsp.with(
      vim.lsp.handlers.signature_help, {
        border = {"╔", "═", "╗", "║", "╝", "═", "╚", "║"},
      }
    ),

This means you hook signature help to  vim.lsp.handlers.signature_help and the setting was set to vim.lsp.handlers.signature_help. Not the plugin.
This is a feature requested by lspsaga user who wants to hook the lspsaga floating window to lsp_signature.

The reason is that you hook the signature twice and the second one will override the first. That is why the config is not working correctly.
The plugin allows ["textDocument/signatureHelp"] to be overrided and will call the overriding signature function instead of the signature function provided by the plugin.

Yes, I think so, I just wanted to know if we can define ["textDocument/signatureHelp"] with a border, and this plugin only takes the border without ignoring all its other configurations. but it looks like this plugin ignores the configuration


Add property placeholder support

https://camel.apache.org/manual/using-propertyplaceholder.html

We have some support for this in the new profile editor


Minor enhancements to UI and added Geolocation

Remove whitespace for better alignment
Reduce font size to remove clutter
Added geolocation

All changes from this PR have been migrated into the codebase.


beef files detected as HyPhy or brainfuck

Problem Description
Any file ending in .bf seems to get marked as HyPhy or brainfuck, usually incorrectly. This primarily affects beef repos, but I was able to find this repo containing code in something called befunge which is also affected, though this matters more for beef.

URL of the affected repository:
every beef repo as far as I can tell. for example:
https://github.com/beefytech/beef
https://github.com/MineGame159/glfw-beef
https://github.com/qzole/imgui-beef
Last modified on:

2020-10-23
Expected language:

beef
Detected language:

HyPhy or brainfuck

This would be because Linguist doesn't know about Beef and only associates the .bf extension with HyPhy or brainfuck.
In order for your files to be identified as beef, Linguist would need to be taught all about it. It the .bf extension for Beef is sufficiently popular for inclusion (see the CONTRIBUTING.md file), we'd appreciate a pull request to add support.

Usage seems to check out; keyword using gives just under 3K results. Will make a PR.


ASwitch component focus

I love the components so far!
I have noticed when I was testing that ASwitch component cannot not get a keyboard focus. This also means that it cannot be toggled by keyboard, only by mouse, which from the accessibility POV not ideal.
I believe the internal hidden input[type='checkbox'] is hidden, and that leads to this problem.
I have seen other frameworks are not hiding this internal input, but making it "invisible" with CSS like:
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;

I'm not sure tough that this is the best solution...
As a temporary solution one can apply a similar CSS rule which at least makes it indeed possible to get a keyboard focus on the component, but also a visual clue would be also needed that the component has a keyboard focus.

Hi 👋🏻
Thanks for raising the issue. Yes, ASwitch currently can't get focused.
I will try this soon and update the code.
Thanks.


Fix categoryList parsing in docs check

moved go code in dev/scripts alongside tarball go code and vendored gopkg.in/yaml.v3
users can rerun the doc check the same way as jenkins, execute ./dev/scripts/check-docs.sh
i decided against adding a binary into the dockerfile because it would be clunky to run locally. i don't want to require users to install yq to revalidate the check or require them to run go get that would write files wherever their GOPATH happens to be.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8871/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8927/
Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8929/
Test FAILed.

Merged build finished. Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8930/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8931/
Test FAILed.

jenkins, test this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8933/
Test PASSed.

alluxio-bot, merge this please


Simplify peer review button text (#3376)

Description (required)
Fixes #3376
The lengthy button text was not showing correctly, discussions concluded
that the button texts could be simplified to just "yes" or "no". To ensure
code read-ability, the buttons were renamed. Also made slight code style
adjustments to ReviewImageFragment.java and fragment_review_image.md.
(unsure if the swapping of translations in other languages should be done
by us, or over on translatewiki, please do advice)
Tests performed (required)
Tested betaDebug on emulator with API level 30.
Screenshots (for UI changes only)

@gabrielchl Thank you for your PR, there are a lot of irrelevant changes in your PR, could you please revert them?

@madhurgupta10 I assume that you're referring to the translation file changes? Those are relevant, tho not needed, as to remove unused translation strings. (or should we ignore all files other than the template strings.xml and let translatewiki do the rest?)

@gabrielchl You can ignore all files other than the strings.xml, translatewiki should handle it.


Feature/dialog modal

Rebrand of Dialog(Alert) and Modal component.

The Changeset file is missing from the PR.


Placeholder for Event Transformer library

See: https://github.com/snowplow/snowplow/tree/feature/event-transformers

TODO: refresh this branch using 74-onto-73 (to get e.g. #2090)

TODO: remove the data-modeling/spark folder from this branch

this is the analytics sdk, closing