]>
gitweb.factorcode.org Git - factor.git/log
John Benediktsson [Sat, 29 Apr 2023 23:41:02 +0000 (16:41 -0700)]
help.tour: fix docs
John Benediktsson [Fri, 28 Apr 2023 17:39:51 +0000 (10:39 -0700)]
build-from-source: don't use github-git-uri by default
John Benediktsson [Fri, 28 Apr 2023 17:35:53 +0000 (10:35 -0700)]
io.sockets.secure.unix: handle linux ssl error on premature close
John Benediktsson [Fri, 28 Apr 2023 04:53:46 +0000 (21:53 -0700)]
io.sockets.secure.unix: simplify tests
John Benediktsson [Fri, 28 Apr 2023 04:53:31 +0000 (21:53 -0700)]
io.sockets.secure: simplify with-secure-context
Doug Coleman [Thu, 27 Apr 2023 22:57:07 +0000 (17:57 -0500)]
openssl.libssl: bug report got fixed! "read header" test works again
https://github.com/openssl/openssl/issues/20808
Doug Coleman [Thu, 27 Apr 2023 22:54:37 +0000 (17:54 -0500)]
github: add http/https uris
Doug Coleman [Thu, 27 Apr 2023 22:53:37 +0000 (17:53 -0500)]
build-from-source: use a pristine directory $TEMP/github/[org]/[repo]
add support for gitlab (freedesktop cairo moved there only)
John Benediktsson [Thu, 27 Apr 2023 21:13:11 +0000 (14:13 -0700)]
websites.concatenative: adding re
Doug Coleman [Thu, 27 Apr 2023 00:59:45 +0000 (19:59 -0500)]
certs: add a vocabulary to generate ssl certs for testing
John Benediktsson [Wed, 26 Apr 2023 16:02:24 +0000 (09:02 -0700)]
tools.deploy.backend: clean the old deploy images automatically
Doug Coleman [Sat, 22 Apr 2023 14:22:40 +0000 (09:22 -0500)]
hacker-news: use parallel-map-timeout
Doug Coleman [Sat, 22 Apr 2023 14:22:34 +0000 (09:22 -0500)]
concurrency.combinators: add parallel-map-timeout
Doug Coleman [Sat, 22 Apr 2023 02:02:50 +0000 (21:02 -0500)]
openssl.libssl: allow "unknown" state in initialized ssl object unit test
The behavior of a fully passing test suite seems to contradict that
the "unknown" state should not happen in the ssl object that has
just been initialized. If you know why this happens or think it's
problematic, please file an issue.
The same issue happens with C: https://paste.factorcode.org/paste?id=4554
Doug Coleman [Fri, 21 Apr 2023 23:19:25 +0000 (18:19 -0500)]
codebase-analyzer: add some julia/rust project file detection
Doug Coleman [Thu, 20 Apr 2023 00:29:47 +0000 (19:29 -0500)]
openssl: use TLS_method() to get the highest supported version
TLSv1_1_method-style functions are deprecated
Doug Coleman [Tue, 18 Apr 2023 21:48:35 +0000 (16:48 -0500)]
hacker-news: fix json http gets
John Benediktsson [Tue, 18 Apr 2023 20:16:10 +0000 (13:16 -0700)]
github: fix json.http duplication
Doug Coleman [Tue, 18 Apr 2023 00:14:57 +0000 (19:14 -0500)]
hacker-news: add a word to get comments
Doug Coleman [Tue, 18 Apr 2023 00:14:25 +0000 (19:14 -0500)]
github: use json.http
Doug Coleman [Tue, 18 Apr 2023 00:12:30 +0000 (19:12 -0500)]
json: add json.http and some helper words for http requests
Doug Coleman [Tue, 18 Apr 2023 00:07:36 +0000 (19:07 -0500)]
codebase-analyzer: add gradle file finder
Doug Coleman [Tue, 18 Apr 2023 01:57:05 +0000 (20:57 -0500)]
npm: add some words to work with npm
Doug Coleman [Tue, 18 Apr 2023 01:54:58 +0000 (20:54 -0500)]
github: add some more github api calls
Doug Coleman [Tue, 18 Apr 2023 01:54:37 +0000 (20:54 -0500)]
build-from-source: use github api to get versions
Doug Coleman [Sun, 16 Apr 2023 03:07:32 +0000 (22:07 -0500)]
discord: add a metadata slot for storing data that persists between reconnects
Doug Coleman [Sat, 15 Apr 2023 23:22:48 +0000 (18:22 -0500)]
discord.chatgpt-bot: Add a discord.chatgpt-bot vocabulary
example:
discord-bot-config get
[ discord-chatgpt-bot ] >>user-callback
HS{ "erg#5983" } >>obey-names
discord-connect
Doug Coleman [Sat, 15 Apr 2023 23:18:21 +0000 (18:18 -0500)]
openai: get models and sort by latest
Doug Coleman [Sat, 15 Apr 2023 23:17:45 +0000 (18:17 -0500)]
discord: Add obey-names hash-set concept
discord-bot-config get
[ discord-chatgpt-bot ] >>user-callback
HS{ "erg#5983" } >>obey-names
discord-connect
Doug Coleman [Sat, 15 Apr 2023 20:51:39 +0000 (15:51 -0500)]
discord: handle errors in bot, e.g. message too large from `help discord:dispatch-message`
max size is 4k so split up messages or truncate
Doug Coleman [Sat, 15 Apr 2023 20:39:06 +0000 (15:39 -0500)]
discord: remove breakpoint
Doug Coleman [Sat, 15 Apr 2023 20:28:44 +0000 (15:28 -0500)]
discord: look up discord ops as singletons
basic bot:
GENERIC: discord-help-bot ( json opcode -- )
M: object discord-help-bot 2drop ;
M: MESSAGE_CREATE discord-help-bot drop
{ [ reply-command ] [ reply-echo ] } 1|| drop ;
launch bot:
discord-bot-config get
[ discord-help-bot ] >>user-callback
discord-connect
Doug Coleman [Sat, 15 Apr 2023 13:50:47 +0000 (08:50 -0500)]
discord: on reconnect we create a new <discord-bot> so set user-callback on config instead
Doug Coleman [Sat, 15 Apr 2023 06:39:04 +0000 (01:39 -0500)]
io.sockets: add using
Doug Coleman [Sat, 15 Apr 2023 03:36:43 +0000 (22:36 -0500)]
http2.server: fix using
Doug Coleman [Sat, 15 Apr 2023 01:38:35 +0000 (20:38 -0500)]
discord: add a basic bot functionality
discord-bot-config get discord-connect
[ discord-help-bot-handler ] >>user-callback
Doug Coleman [Fri, 14 Apr 2023 04:18:36 +0000 (23:18 -0500)]
discord: add dispose and format better and callback is now ( discord-bot json opcode-string -- )
Doug Coleman [Mon, 10 Apr 2023 14:17:23 +0000 (09:17 -0500)]
discord: add user-callback, reconnects
Example:
: handler ( bot json -- ) 2drop ;
discord-bot-config get discord-connect
[ handler ] >>user-callback
Doug Coleman [Mon, 10 Apr 2023 14:16:25 +0000 (09:16 -0500)]
build-from-source: fix merge conflict
Doug Coleman [Mon, 3 Apr 2023 04:03:11 +0000 (23:03 -0500)]
discord: handle more messages
Doug Coleman [Mon, 3 Apr 2023 04:02:55 +0000 (23:02 -0500)]
http.websockets: don't send if the socket is disposed
Doug Coleman [Mon, 3 Apr 2023 03:59:18 +0000 (22:59 -0500)]
desctructors: add if-disposed
Doug Coleman [Mon, 3 Apr 2023 03:57:53 +0000 (22:57 -0500)]
cli.git: add git-tag to get all the tags
Doug Coleman [Mon, 3 Apr 2023 03:55:20 +0000 (22:55 -0500)]
build-from-source.macosx: add basic python3 compilation
Doug Coleman [Mon, 10 Apr 2023 01:59:17 +0000 (20:59 -0500)]
build-from-source: python version numbers are not all semver, find the latest one
Doug Coleman [Mon, 3 Apr 2023 03:42:28 +0000 (22:42 -0500)]
json: add json-null>f
Doug Coleman [Mon, 3 Apr 2023 03:41:45 +0000 (22:41 -0500)]
io.launcher: use process-lines
Doug Coleman [Wed, 29 Mar 2023 05:05:59 +0000 (00:05 -0500)]
protocols: fix typo, remove error
Doug Coleman [Wed, 29 Mar 2023 05:01:45 +0000 (00:01 -0500)]
http: remove some dead code but i wanted to keep it in git history
Doug Coleman [Wed, 29 Mar 2023 04:59:57 +0000 (23:59 -0500)]
http: allow using ws:// or wss:// and use it in discord
wss:// adds the websocket upgrade headers to the request and then gets replaced by https://
Doug Coleman [Wed, 29 Mar 2023 04:57:58 +0000 (23:57 -0500)]
protocols: add an alternative to getservbyport
getservbyport doesn't support ws:// wss://
Doug Coleman [Wed, 29 Mar 2023 03:36:41 +0000 (22:36 -0500)]
bittorrent: add two fields to magnet links
Doug Coleman [Wed, 29 Mar 2023 02:39:00 +0000 (21:39 -0500)]
unix.ffi: typo, prot -> proto
Doug Coleman [Fri, 14 Apr 2023 01:22:16 +0000 (20:22 -0500)]
http: add delete-header
Doug Coleman [Fri, 14 Apr 2023 01:13:50 +0000 (20:13 -0500)]
aws: Add vocabulary that can do v4 signing
from factor:
"https://ec2.us-east-1.api.aws" <get-request>
"ec2"
"us-east-1"
[=[ export AWS_ACCESS_KEY_ID="asdfasdfasdf"
export AWS_SECRET_ACCESS_KEY="xxxxxxxxxxxxx"
export AWS_SESSION_TOKEN="abcdefgverylongsessiontoken"
]=] string>aws-creds
sign-aws-request http-request
for debugging with curl built from source with cmake:
./src/curl --verbose --request GET \
'https://ec2.us-east-1.api.aws/?Action=DescribeKeyPairs' \
--aws-sigv4 aws:amz:us-east-1:ec2 \
--user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \
--header "x-amz-security-token: ${AWS_SESSION_TOKEN}" \
--header 'Accept: application/json'
John Benediktsson [Thu, 13 Apr 2023 22:17:45 +0000 (15:17 -0700)]
calendar: removing weekdays-between2
John Benediktsson [Thu, 13 Apr 2023 22:04:30 +0000 (15:04 -0700)]
calendar: fix end-of-week modifying the input
Doug Coleman [Thu, 13 Apr 2023 03:54:21 +0000 (22:54 -0500)]
codebase-analyzer: more useful by printing the files. automake,nmake,CAPSfiles, etc
John Benediktsson [Thu, 13 Apr 2023 03:52:23 +0000 (20:52 -0700)]
openai: adding support for the OpenAI API
Doug Coleman [Fri, 7 Apr 2023 19:16:20 +0000 (14:16 -0500)]
build-from-source.windows: thought postgres worked but no
official support was dropped but i think you can still compile it if you
get the right command
Doug Coleman [Fri, 7 Apr 2023 18:44:31 +0000 (13:44 -0500)]
build-from-source.windows: Support all builds on win32
main difference is you give cmake `-A Win32` and msbuild
`/p:Platform=Win32`
some libraries have some features disabled, like pcre and some
compression libraries. this is because cmake finds them in
strawberryperl which i have installed as 64bit, so 32bit obviously can't
link against them. if this is a problem, we can build them alongside
(again? cairo seems to build a lot already) and link them
Doug Coleman [Fri, 7 Apr 2023 18:43:19 +0000 (13:43 -0500)]
cuda: fix ffi, it's size_t (32bit on win32, 64bit on win64)
cuDeviceTotalMem_v2 can't get vram sizes above 4GB
probably need to use directx apis to get real vram on win32
Doug Coleman [Fri, 7 Apr 2023 06:06:02 +0000 (01:06 -0500)]
build-from-source: Add cpu info to temp-directory for 32 vs 64bit and
arm vs intel
Doug Coleman [Fri, 7 Apr 2023 06:05:19 +0000 (01:05 -0500)]
openssl: x64 library is called libssl-3-x64.dll, x86 is called
libssl-3.dll
Doug Coleman [Fri, 7 Apr 2023 05:16:46 +0000 (00:16 -0500)]
windows.shell32: add a bunch of guids for SHGetKnownFolderPath
John Benediktsson [Fri, 7 Apr 2023 00:05:51 +0000 (17:05 -0700)]
zoneinfo: add back metadata
John Benediktsson [Fri, 7 Apr 2023 00:04:57 +0000 (17:04 -0700)]
zoneinfo: update to tzdata-2023c
Doug Coleman [Thu, 6 Apr 2023 23:28:29 +0000 (18:28 -0500)]
crontab: add some words to calculate cron start times
John Benediktsson [Thu, 6 Apr 2023 17:01:18 +0000 (10:01 -0700)]
crontab: make parse-cronentry optional in API
John Benediktsson [Thu, 6 Apr 2023 16:58:13 +0000 (09:58 -0700)]
crontab: fixing another case
John Benediktsson [Thu, 6 Apr 2023 16:06:23 +0000 (09:06 -0700)]
websites.concatenative: tweak the cgit responder
John Benediktsson [Thu, 6 Apr 2023 15:48:34 +0000 (08:48 -0700)]
crontab: handle more non-standard day-of-week fractions
Doug Coleman [Thu, 6 Apr 2023 14:30:04 +0000 (09:30 -0500)]
solr: add very basic solr vocab to expand on later
Doug Coleman [Thu, 6 Apr 2023 14:21:47 +0000 (09:21 -0500)]
sets.extras: Add diffs word for comparing sets
Doug Coleman [Thu, 6 Apr 2023 14:19:09 +0000 (09:19 -0500)]
string-server: add a stress-test that serves 300k length strings
repros https://github.com/factor/factor/issues/2771
! "localhost" 1239 <inet> utf8 [ read-contents ] with-client
! 100 <iota> >array [ drop "127.0.0.1" 1239 <inet4> binary [ read-contents [ all-eq? ] [ length ] bi 2array ] with-client ] parallel-map
! 100 <iota> >array [ drop "127.0.0.1" 1239 <inet4> binary [ read-contents [ [ CHAR: a = ] all? ] [ length ] bi 2array ] with-client ] parallel-map
! 50 <iota> >array [ drop "127.0.0.1" 1239 <inet4> binary [ read-contents [ [ CHAR: a = ] all? ] [ length ] bi 2array ] with-client ] parallel-map ! 40,000,000
Doug Coleman [Thu, 6 Apr 2023 14:11:54 +0000 (09:11 -0500)]
chrome-tools: Add a way to copy curl/fetch commands from chrome-tools
Doug Coleman [Thu, 6 Apr 2023 13:03:40 +0000 (08:03 -0500)]
iso-codes: add a way to get the debian iso files for languages etc
John Benediktsson [Thu, 6 Apr 2023 04:01:14 +0000 (21:01 -0700)]
crontab: support day=7 for Sunday, non-standard
John Benediktsson [Thu, 6 Apr 2023 03:53:10 +0000 (20:53 -0700)]
websites.concatenative: use ~/cgit
John Benediktsson [Thu, 6 Apr 2023 03:09:25 +0000 (20:09 -0700)]
memoize: change zero-input memoize to store { called output }
Doug Coleman [Thu, 6 Apr 2023 02:32:48 +0000 (21:32 -0500)]
cli.git: fix stack effect
John Benediktsson [Wed, 5 Apr 2023 22:33:56 +0000 (15:33 -0700)]
tools.completion: adding EDITOR: tab completion
John Benediktsson [Wed, 5 Apr 2023 22:24:24 +0000 (15:24 -0700)]
memoize: fix a few more zero input cases
John Benediktsson [Wed, 5 Apr 2023 22:23:49 +0000 (15:23 -0700)]
crontab: fix 2/26 * * * *
John Benediktsson [Tue, 4 Apr 2023 20:58:48 +0000 (13:58 -0700)]
memoize: add another test case, only ( -- ) was broken
John Benediktsson [Tue, 4 Apr 2023 20:52:56 +0000 (13:52 -0700)]
memoize: fix memoization of no-arg words
Doug Coleman [Tue, 4 Apr 2023 00:55:21 +0000 (19:55 -0500)]
generators: fix docs help-lint
Doug Coleman [Sun, 2 Apr 2023 17:12:28 +0000 (12:12 -0500)]
build-from-source.windows: add openal to build all
Keldan Chapman [Sat, 1 Apr 2023 10:43:55 +0000 (12:43 +0200)]
Add generator article
Benjamin Pollack [Mon, 3 Apr 2023 17:15:01 +0000 (13:15 -0400)]
build-from-source: do not copy renamed libssl DLLs
We were copying the DLLs build by the OpenSSL build process to the old
names we depended on in the Factor source code. But since we're no
longer doing that, these steps are no longer needed.
Benjamin Pollack [Mon, 3 Apr 2023 17:11:23 +0000 (13:11 -0400)]
openssl: use proper DLL names for Windows
The preferred DLL name for OpenSSL appears to have pivoted to be
"libssl-3-<platform>.dll" at some point, and likewise for libcrypto.
We need to look for them with the new name; otherwise, we end up
needing two separate copies of libcrypto with slightly different names
to avoid giving ourselves DLL hell.
Doug Coleman [Tue, 28 Mar 2023 06:18:43 +0000 (01:18 -0500)]
crypto.xor: fix path
Doug Coleman [Tue, 28 Mar 2023 05:23:33 +0000 (00:23 -0500)]
crypto.xor: move to basis for websockets
Doug Coleman [Tue, 28 Mar 2023 05:21:17 +0000 (00:21 -0500)]
http.client: fix docs
Doug Coleman [Tue, 28 Mar 2023 04:57:12 +0000 (23:57 -0500)]
http.client: move <PRIVATE section
Doug Coleman [Tue, 28 Mar 2023 04:06:25 +0000 (23:06 -0500)]
discord: add basic discord bot support
- go to discord developer portal https://discord.com/developers/applications
- make a discord application
- add a bot to that app
-- enable PRESENCE INTENT, SERVER MEMBERS INTENT, MESSAGE CONTENT INTENT (as desired)
! For websockets
t{ discord-bot-config
{ token "...from discord developer portal..." }
{ application-id "
10885523740 " } ! from developer portal
{ guild-id "
1357300335 " } ! from "developer mode" in discord client, right click the server and "copy id"
{ channel-id "
1089175837623 " } ! from "developer mode", right click channel and "copy id"
{ permissions 2048 } ! intentions (2048 is send messages)
}
discord-connect
! For REST api
T{ discord-bot-config
{ client-id "bot id from dev portal" }
{ client-secret "from dev portal" }
}
Doug Coleman [Tue, 28 Mar 2023 03:55:15 +0000 (22:55 -0500)]
http.client: support upgrading to websockets
Doug Coleman [Sat, 25 Mar 2023 04:42:15 +0000 (23:42 -0500)]
build-from-source.windows: build openal
Doug Coleman [Sat, 25 Mar 2023 04:14:16 +0000 (23:14 -0500)]
build-from-source.windows: build blas and use more qw{}
sadly can't use qw{ } for blas..
Doug Coleman [Sat, 25 Mar 2023 00:35:44 +0000 (19:35 -0500)]
cli.git: add a way to git fetch and git reset hard instead of just a
regular pull