summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Expand)AuthorAgeFilesLines
* DocsDavid Baker2017-03-081-0/+13
* Incorrectly copied copyrightDavid Baker2017-03-081-1/+0
* Not any more, it doesn'tDavid Baker2017-03-081-1/+0
* Better error messageDavid Baker2017-03-081-1/+3
* pep8David Baker2017-03-082-1/+2
* Add msisdn util fileDavid Baker2017-03-081-0/+27
* Pull out datastore in initialiserDavid Baker2017-03-081-5/+10
* Minor fixes from PR feedbackDavid Baker2017-03-082-5/+3
* Fix log lineDavid Baker2017-03-081-1/+1
* TyposDavid Baker2017-03-081-2/+2
* Refector out assert_params_in_requestDavid Baker2017-03-083-37/+27
* Factor out msisdn canonicalisationDavid Baker2017-03-084-41/+11
* Fix pep8David Baker2017-03-084-7/+7
* Support new login formatDavid Baker2017-03-071-6/+91
* Add msisdns as 3pids during registrationDavid Baker2017-03-031-0/+47
* Just return the deferred straight offDavid Baker2017-03-011-4/+2
* Merge remote-tracking branch 'origin/develop' into dbkr/msisdn_signinDavid Baker2017-03-0130-168/+618
|\
| * Don't log unknown cache warnings in workersErik Johnston2017-02-281-1/+3
| * Merge pull request #1959 from matrix-org/erikj/intern_onceErik Johnston2017-02-281-3/+2
| |\
| | * Intern table column names onceErik Johnston2017-02-281-3/+2
| * | Add stream_id index to device_lists_outbound_pokesErik Johnston2017-02-282-1/+17
| |/
| * Fix up txn nameErik Johnston2017-02-281-1/+1
| * Pop with default value to stop throwingErik Johnston2017-02-281-1/+1
| * Merge pull request #1955 from matrix-org/erikj/current_state_query_bypassErik Johnston2017-02-271-0/+15
| |\
| | * Remove needless checkErik Johnston2017-02-271-2/+0
| | * It should be allErik Johnston2017-02-271-1/+1
| | * Don't fetch current state in common caseErik Johnston2017-02-271-0/+17
| * | Pop rather than del from dictErik Johnston2017-02-271-1/+1
| |/
| * Merge pull request #1954 from matrix-org/erikj/cache_device2Erik Johnston2017-02-271-45/+73
| |\
| | * Cache get_user_devices_from_cacheErik Johnston2017-02-271-45/+73
| * | Merge pull request #1945 from jkolo/fix_dynamic_thumbnails_aspectErik Johnston2017-02-271-0/+3
| |\ \
| | * | Fix dynamic thumbnails aspectJurek2017-02-241-0/+3
| * | | Strip newlines from SQL queriesErik Johnston2017-02-231-0/+6
| * | | Remove lock from rotate notifsErik Johnston2017-02-221-3/+0
| * | | Ensure we pass positive ints to delay functionErik Johnston2017-02-221-1/+2
| | |/ | |/|
| * | Store looping callErik Johnston2017-02-211-1/+3
| * | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-02-211-1/+1
| |\ \
| | * | Bump version and changelog github/release-v0.19.2 release-v0.19.2Erik Johnston2017-02-211-1/+1
| | * | Remove unused paramErik Johnston2017-02-202-2/+1
| | * | Fix /context/ visibiltiy rulesErik Johnston2017-02-201-1/+4
| * | | Fix a race in transaction queueRichard van der Hoff2017-02-201-9/+21
| * | | Remove unused paramErik Johnston2017-02-202-2/+1
| * | | Fix /context/ visibiltiy rulesErik Johnston2017-02-201-1/+4
| * | | Fix up notif rotationErik Johnston2017-02-181-14/+22
| * | | Merge pull request #1925 from matrix-org/dbkr/pushers_lang_lengthenDavid Baker2017-02-171-0/+39
| |\ \ \
| | * | | Use TEXT rather than VARCHARDavid Baker2017-02-171-6/+6
| | * | | Make the pushers lang field column longerDavid Baker2017-02-171-0/+39
| * | | | Merge pull request #1922 from matrix-org/dbkr/allow_forget_for_banDavid Baker2017-02-171-1/+3
| |\ \ \ \ | | |/ / / | |/| | |
| | * | | Allow forgetting rooms you're banned fromDavid Baker2017-02-151-1/+3
| * | | | CommentErik Johnston2017-02-161-1/+4
| * | | | CommentErik Johnston2017-02-161-7/+14
| * | | | Store the default push actions in a more efficient mannerErik Johnston2017-02-161-11/+40
| * | | | Merge pull request #1916 from matrix-org/erikj/push_actions_deleteErik Johnston2017-02-164-57/+254
| |\ \ \ \
| | * | | | Less aggressive timersErik Johnston2017-02-141-2/+2
| | * | | | Aggregate event push actionsErik Johnston2017-02-144-57/+254
| * | | | | Merge pull request #1921 from matrix-org/rav/fix_key_changesRichard van der Hoff2017-02-153-11/+58
| |\ \ \ \ \ | | |_|/ / / | |/| | | |
| | * | | | Fix bugs in the /keys/changes apiRichard van der Hoff2017-02-143-11/+58
| * | | | | Merge pull request #1917 from matrix-org/dbkr/make_ban_reasons_workDavid Baker2017-02-141-0/+5
| |\ \ \ \ \ | | |_|/ / / | |/| | | |
| | * | | | Make kick & ban reasons workDavid Baker2017-02-141-0/+5
| * | | | | Merge pull request #1873 from matrix-org/erikj/delete_push_actionsErik Johnston2017-02-141-3/+8
| |\ \ \ \ \ | | |_|/ / / | |/| | | |
| | * | | | Be more agressive about purging old room event_push_actionsErik Johnston2017-02-011-3/+8
| * | | | | Merge pull request #1914 from matrix-org/erikj/cache_presenceErik Johnston2017-02-133-5/+15
| |\ \ \ \ \
| | * | | | | Cache get_presence storageErik Johnston2017-02-133-5/+15
| * | | | | | Ordering is important on errbacks so add the cleanup func before creating an ...Kegan Dougal2017-02-131-7/+7
| * | | | | | Pop the txn from the map in case it has already been deleted somehowKegan Dougal2017-02-131-1/+1
| * | | | | | Don't cache errors at allKegan Dougal2017-02-131-10/+9
| * | | | | | http txns: Do not cache error responsesKegan Dougal2017-02-131-1/+10
| |/ / / / /
| * | | | | Merge pull request #1912 from matrix-org/markjh/roominitialsyncErik Johnston2017-02-132-0/+10
| |\ \ \ \ \
| | * | | | | Add db functions needed for room initial sync to slaveMark Haines2017-02-132-0/+10
| * | | | | | Fix typo in config comments.Tyler Smith2017-02-111-1/+1
| * | | | | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-02-091-1/+1
| |\ \ \ \ \ \ | | | |_|_|/ / | | |/| | | |
| | * | | | | Update version and changelog github/release-v0.19.1 release-v0.19.1Erik Johnston2017-02-091-1/+1
| * | | | | | Make None check explicitErik Johnston2017-02-081-1/+1
| * | | | | | Merge pull request #1892 from matrix-org/erikj/rejection_fwd_extremErik Johnston2017-02-081-9/+6
| |\| | | | | | | |_|_|/ / | |/| | | |
| | * | | | Ignore new rejected events when working out forward extremeties.Erik Johnston2017-02-081-9/+6
* | | | | | WIP support for msisdn 3pid proxy methodsDavid Baker2017-02-146-19/+228
|/ / / / /
* | | | | Remove a few aspirational but unused constantsDavid Baker2017-02-081-3/+0
* | | | | Merge pull request #1784 from morteza-araby/user-adminErik Johnston2017-02-065-3/+502
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | admin,storage: added more administrator functionalitiesMorteza Araby2017-02-025-3/+502
* | | | | Bump changelog and version github/release-v0.19.0 release-v0.19.0Erik Johnston2017-02-041-1/+1
* | | | | Bump changelog and version v0.19.0-rc4Erik Johnston2017-02-021-1/+1
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.19.0Erik Johnston2017-02-023-4/+9
|\ \ \ \ \
| * \ \ \ \ Merge pull request #1879 from matrix-org/erikj/bump_cache_factorsErik Johnston2017-02-021-3/+3
| |\ \ \ \ \
| | * | | | | Bump cache sizes for common membership queriesErik Johnston2017-02-021-3/+3
| * | | | | | Measure new device list stuffErik Johnston2017-02-022-1/+6
| |/ / / / /
* | | | | | Bump version and changelog v0.19.0-rc3Erik Johnston2017-02-021-1/+1
* | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.19.0Erik Johnston2017-02-0214-95/+128
|\| | | | |
| * | | | | Use new get_users_who_share_room_with_userErik Johnston2017-02-021-11/+13
| * | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/device_lis...Erik Johnston2017-02-026-29/+42
| |\ \ \ \ \
| | * \ \ \ \ Merge pull request #1876 from matrix-org/erikj/shared_member_storeErik Johnston2017-02-026-29/+42
| | |\ \ \ \ \ | | | |/ / / / | | |/| | | |
| | | * | | | Fix replicationErik Johnston2017-02-021-0/+3
| | | * | | | CommentErik Johnston2017-02-021-1/+4
| | | * | | | CommentErik Johnston2017-02-021-0/+2
| | | * | | | CommentErik Johnston2017-02-021-1/+2
| | | * | | | Make presence.get_new_events a bit fasterErik Johnston2017-02-024-29/+33
| | | | |/ / | | | |/| |
| * | | | | sets aren't JSON serializableErik Johnston2017-02-021-1/+1
| * | | | | Use stream_ordering_to_exterm for /keys/changesErik Johnston2017-02-021-9/+9
| |/ / / /
| * / / / Fix email push in pusher workerErik Johnston2017-02-026-45/+63
| |/ / /
* | | | Update changelog v0.19.0-rc2Erik Johnston2017-02-021-1/+1
* | | | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.19.0Erik Johnston2017-02-023-5/+57
|\| | |
| * | | Doc argsErik Johnston2017-02-012-0/+11
| * | | CommentErik Johnston2017-02-011-0/+3
| * | | Include newly joined users in /keys/changes APIErik Johnston2017-02-013-5/+43
* | | | Bump version and changelogErik Johnston2017-02-021-1/+1
|/ / /
* | | Correctly raise exceptions for ratelimitng. Ratelimit on 401Erik Johnston2017-02-012-4/+6
* | | Wake sync up for device changesErik Johnston2017-02-011-1/+2
* | | Merge pull request #1869 from matrix-org/erikj/device_list_streamErik Johnston2017-02-012-0/+65
|\ \ \
| * | | CommentErik Johnston2017-02-011-1/+1
| * | | CommentErik Johnston2017-02-011-1/+12
| * | | Implement /keys/changesErik Johnston2017-02-012-0/+54
* | | | Merge pull request #1870 from matrix-org/erikj/cache_get_all_new_eventsErik Johnston2017-02-011-0/+2
|\ \ \ \
| * | | | Add a small cache get_all_new_eventsErik Johnston2017-02-011-0/+2
* | | | | Merge pull request #1868 from matrix-org/erikj/replication_cacheErik Johnston2017-02-014-41/+5
|\ \ \ \ \
| * | | | | Only invalidate membership caches based on the cache streamErik Johnston2017-01-314-41/+5
* | | | | | Add m.room.member type to queryErik Johnston2017-02-011-1/+1
| |_|_|/ / |/| | | |
* | | | | Merge pull request #1867 from matrix-org/erikj/member_indexErik Johnston2017-02-013-1/+26
|\ \ \ \ \ | |_|/ / / |/| | | |
| * | | | Add an index to make membership queries fasterErik Johnston2017-01-313-1/+26
| |/ / /
* | / / Up get_latest_event_ids_in_room cacheErik Johnston2017-02-011-1/+1
| |/ / |/| |
* | | Merge pull request #1866 from matrix-org/erikj/device_list_fixesErik Johnston2017-02-012-2/+18
|\ \ \ | |/ / |/| |
| * | Remove explicit < 400 check as apparently this is confusingErik Johnston2017-01-311-3/+1
| * | CommentErik Johnston2017-01-311-0/+2
| * | CommentErik Johnston2017-01-311-0/+4
| * | Better handle 404 response for federation /send/Erik Johnston2017-01-312-2/+14
* | | Merge pull request #1864 from matrix-org/erikj/device_list_fixesErik Johnston2017-01-311-8/+26
|\| |
| * | Fix deletion of old sent devices correctlyErik Johnston2017-01-311-5/+17
| * | Only fetch with row ts and count > 1Erik Johnston2017-01-311-1/+2
| * | Fix clearing out old device list outbound pokesErik Johnston2017-01-311-2/+7
* | | Merge pull request #1862 from matrix-org/erikj/presence_updateErik Johnston2017-01-312-5/+9
|\ \ \ | |/ / |/| |
| * | Stream cache invalidations for room membership storage functionsErik Johnston2017-01-301-2/+6
| * | Use DB cache of joined users for presenceErik Johnston2017-01-301-3/+3
* | | Don't have such a large cacheErik Johnston2017-01-301-1/+1
* | | Fix unit testsErik Johnston2017-01-302-3/+11
* | | Noop device key changes if they're the sameErik Johnston2017-01-303-15/+45
* | | Fix queryErik Johnston2017-01-301-1/+1
|/ /
* | Use get_users_in_room and declare it iterableErik Johnston2017-01-302-2/+2
* | Merge pull request #1857 from matrix-org/erikj/device_list_streamErik Johnston2017-01-3020-104/+983
|\ \
| * | Rename funcErik Johnston2017-01-302-2/+2
| * | Remove debug loggingErik Johnston2017-01-301-1/+0
| * | Clear out old destination pokes.Erik Johnston2017-01-301-0/+42
| * | Always use the latest stream_id, sent or unsentErik Johnston2017-01-301-4/+4
| * | Add ts column to device_lists_outbound_pokesErik Johnston2017-01-272-1/+5
| * | Hook device list updates to replicationErik Johnston2017-01-277-29/+159
| * | CommentErik Johnston2017-01-271-0/+2
| * | CommentErik Johnston2017-01-271-0/+2
| * | SQL param orderingErik Johnston2017-01-271-1/+1
| * | User if rather than forErik Johnston2017-01-271-1/+4
| * | Better nameErik Johnston2017-01-272-2/+4
| * | Remove unused paramErik Johnston2017-01-271-2/+1
| * | Fix on sqlite: use left rather than outer joinErik Johnston2017-01-261-3/+3
| * | Handle users leaving roomsErik Johnston2017-01-262-1/+24
| * | Add commentsErik Johnston2017-01-264-7/+61
| * | Implement device key caching over federationErik Johnston2017-01-269-43/+354
| * | Fix up sending of m.device_list_update edusErik Johnston2017-01-253-80/+82
| * | Add basic implementation of local device list changesErik Johnston2017-01-2512-37/+343
* | | Don't clobber a displayname or avatar_url if provided by an m.room.member eventPaul "LeoNerd" Evans2017-01-241-2/+4
|/ /
* | Merge branch 'erikj/current_state_fix' into developErik Johnston2017-01-231-1/+1
|\ \
| * | TypoErik Johnston2017-01-231-1/+1
* | | Merge pull request #1840 from matrix-org/erikj/current_state_fixErik Johnston2017-01-234-153/+163
|\| |
| * | Refactor to calculate state delta outside transactionErik Johnston2017-01-231-87/+118
| * | CommentsErik Johnston2017-01-201-8/+19
| * | Insert delta of current_state_events to be more efficientErik Johnston2017-01-204-90/+58
* | | Merge pull request #1836 from matrix-org/erikj/current_state_fixErik Johnston2017-01-204-173/+200
|\| |
| * | SpellingErik Johnston2017-01-201-1/+1
| * | Update all call sites after renameErik Johnston2017-01-201-1/+1
| * | CommentsErik Johnston2017-01-201-0/+11
| * | Calculate the forward extremeties onceErik Johnston2017-01-202-126/+92
| * | Derive current_state_events from state groupsErik Johnston2017-01-203-71/+121
* | | Merge pull request #1835 from matrix-org/erikj/fix_workersErik Johnston2017-01-201-0/+10
|\| |
| * | Make worker listener config backwards compatErik Johnston2017-01-201-0/+10
* | | Added default config for turn username and passwordMarvin Steadfast2017-01-191-0/+5
* | | Added username and password for turn serverMarvin Steadfast2017-01-192-10/+20
|/ /
* | Merge pull request #1828 from matrix-org/erikj/iterable_cache_sizeErik Johnston2017-01-181-0/+2
|\ \
| * | Update LruCache size estimate on clearErik Johnston2017-01-181-0/+2
* | | Merge pull request #1811 from aperezdc/unhardcode-riot-urlsDavid Baker2017-01-182-6/+21
|\ \ \
| * | | Allow configuring the Riot URL used in notification emailsAdrian Perez de Castro2017-01-132-6/+21
* | | | Lowercase all email addresses before querying dbDavid Baker2017-01-182-1/+12
| |/ / |/| |
* | | Merge pull request #1823 from matrix-org/erikj/load_events_logsErik Johnston2017-01-181-2/+2
|\ \ \
| * | | Lower loading events log to DEBUGErik Johnston2017-01-171-2/+2
* | | | Merge pull request #1824 from matrix-org/erikj/retry_host_logErik Johnston2017-01-181-1/+1
|\ \ \ \
| * | | | Lower the not retrying host log line to debugErik Johnston2017-01-171-1/+1
| |/ / /
* | | | Merge pull request #1822 from matrix-org/erikj/statE_loggingErik Johnston2017-01-183-6/+6
|\ \ \ \
| * | | | Change resolve_state_groups call site logging to DEBUGErik Johnston2017-01-173-6/+6
| |/ / /
* | | | Merge pull request #1821 from matrix-org/erikj/cache_metrics_string_internErik Johnston2017-01-181-3/+8
|\ \ \ \
| * | | | Measure metrics of string_cacheErik Johnston2017-01-171-3/+8
| |/ / /
* | | | Merge pull request #1818 from matrix-org/erikj/state_auth_splitout_splitErik Johnston2017-01-186-74/+224
|\ \ \ \
| * | | | PEP8Erik Johnston2017-01-171-1/+1
| * | | | Only construct sets when necessaryMark Haines2017-01-171-14/+19
| * | | | Use better namesErik Johnston2017-01-171-9/+7
| * | | | Use better variable nameErik Johnston2017-01-171-3/+3
| * | | | Correctly handle case of rejected events in state resErik Johnston2017-01-171-10/+16
| * | | | Check event is in state_mapErik Johnston2017-01-171-2/+7
| * | | | Fix couple of federation state bugsErik Johnston2017-01-172-3/+5
| * | | | Optimise state resolutionErik Johnston2017-01-175-70/+204
* | | | | Merge pull request #1820 from matrix-org/erikj/push_toolsErik Johnston2017-01-171-1/+1
|\ \ \ \ \ | |_|/ / / |/| | | |
| * | | | Get state at event rather than for room in pushErik Johnston2017-01-171-1/+1
* | | | | Fix typo in return typeErik Johnston2017-01-171-3/+2
|/ / / /
* | | | Merge pull request #1812 from matrix-org/erikj/state_auth_splitout_splitErik Johnston2017-01-171-138/+140
|\| | |
| * | | Put staticmethods at module levelErik Johnston2017-01-161-123/+121
| * | | Split out static state methods from StateHandlerErik Johnston2017-01-131-70/+74
* | | | Rename and comment tree_to_leaves_iteratorErik Johnston2017-01-172-5/+8
* | | | Remove needless call to evict()Erik Johnston2017-01-171-1/+0
* | | | Increase state_group_cache_sizeErik Johnston2017-01-171-1/+1
* | | | Speed up cache size calculationErik Johnston2017-01-175-46/+128
* | | | Use OrderedDict in ExpiringCacheErik Johnston2017-01-161-10/+4
* | | | Up cache max entries for stateErik Johnston2017-01-163-3/+3
* | | | Add support for 'iterable' to ExpiringCacheErik Johnston2017-01-162-10/+22
* | | | Increase cache size limitErik Johnston2017-01-162-2/+2
* | | | Optionally measure size of cache by sum of length of valuesErik Johnston2017-01-134-21/+41
| |_|/ |/| |
* | | Merge pull request #1810 from matrix-org/erikj/state_auth_splitout_splitErik Johnston2017-01-132-571/+649
|\| |
| * | Remove unused functionErik Johnston2017-01-131-3/+0
| * | Split event auth code into seperate moduleErik Johnston2017-01-132-645/+650
| * | Split out static auth methods from Auth objectErik Johnston2017-01-101-419/+495
* | | Merge pull request #1793 from matrix-org/erikj/change_device_inbox_indexErik Johnston2017-01-133-3/+55
|\ \ \ | |_|/ |/| |
| * | Add commentErik Johnston2017-01-131-0/+1
| * | Explicitly close the cursorErik Johnston2017-01-101-0/+1
| * | Don't disable autocommitErik Johnston2017-01-101-8/+4
| * | Change device_inbox stream index to include userErik Johnston2017-01-103-3/+57
* | | Merge pull request #1795 from matrix-org/erikj/port_defaultsErik Johnston2017-01-139-84/+29
|\ \ \
| * | | Pop bind_addressErik Johnston2017-01-101-1/+1
| * | | Restore default bind addressErik Johnston2017-01-109-84/+29
| | |/ | |/|
* | | Fix spurious Unhandled Error log linesErik Johnston2017-01-121-1/+5
* | | Remove full_twisted_stacktraces optionErik Johnston2017-01-122-79/+0
* | | Add missing None checkErik Johnston2017-01-111-5/+6
|/ /
* | Remove spurious for..else..Erik Johnston2017-01-101-11/+0
* | Merge pull request #1792 from matrix-org/erikj/limit_cache_prefill_deviceErik Johnston2017-01-102-3/+6
|\ \
| * | Limit number of entries to prefill from cacheErik Johnston2017-01-102-3/+6
| |/
* | Merge pull request #1790 from matrix-org/erikj/linearizerErik Johnston2017-01-101-2/+5
|\ \
| * | Add paranoia exception catch in LinearizerErik Johnston2017-01-101-2/+5
| |/
* | Log which files we saved attachments to in the media_repositoryMark Haines2017-01-103-0/+11
* | Merge pull request #1789 from matrix-org/erikj/decouple_presenceErik Johnston2017-01-101-1/+3
|\ \
| * | CommentErik Johnston2017-01-101-0/+2
| * | Don't block messages sending on bumping presenceErik Johnston2017-01-101-1/+1
| |/
* | Merge pull request #1787 from matrix-org/erikj/linearize_memberErik Johnston2017-01-102-15/+32
|\ \
| * | Linearize updates to membership via PUT /state/Erik Johnston2017-01-092-15/+32
| |/
* / Name linearizer's for better logsErik Johnston2017-01-094-5/+5
|/
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-01-091-1/+1
|\
| * Bump version and changelog v0.18.7Erik Johnston2017-01-091-1/+1
* | gah, fix mangled merge of 0.18.7 into developMatthew Hodgson2017-01-071-1/+1
* | Merge branch 'release-v0.18.7' into developMatthew2017-01-072-21/+21
|\|
| * bump changelog & version v0.18.7-rc2Matthew2017-01-071-1/+1
| * do the discard check in the right place to avoid grabbing dependent eventsMatthew2017-01-071-20/+20
* | Merge branch 'release-v0.18.7' into developMatthew Hodgson2017-01-073-3/+25
|\|
| * Discard PDUs from invalid origins due to #1753 in 0.18.[56] v0.18.7-rc1Matthew2017-01-071-1/+23
| * oops, this should have been rc1Matthew Hodgson2017-01-071-1/+1
| * move logging to right placeMatthew Hodgson2017-01-071-1/+1
| * bump versionMatthew2017-01-061-1/+1
| * fix typo breaking the fix to #1753Matthew2017-01-061-1/+1
* | Merge branch 'release-v0.18.6' into developMark Haines2017-01-062-5/+7
|\|
| * Bump version and changelog v0.18.6Mark Haines2017-01-061-1/+1
| * handlers/room_member: fix guest access check when joining roomsPatrik Oldsberg2017-01-061-4/+6